#variables importantes
$file= me dice la seccion
$renglon= tiene las lineas
y en @lines tengo el modulo las variables y las lineas es una lista de registros

# print "\n**********************\n" ;

our @secciones=("CIRCUIT DESCRIPTION", "ELEMENTS", "INITIAL CONDITIONS", "OUTPUTS",  "RUN CONTROLS","DEFINED PARAMETERS", "MODELS","EQUATIONS", "VARIABLES", "FUNCTIONS","CONSTANTS","ELEMENT DESCRIPTION",  "FORCED VARIABLES", "PARAPLOT", "RESULTADOS","GRAFICOS","ACEPTAR_GRAFICOS","DATA","DATABLOB", "RERUN DESCRIPTION", "CONTINUE",  "RE-OUTPUT");

ELEMENTS
RUN CONTROLS
EQUATIONS



parsers:
CIRCUIT DESCRIPTION



  print "\n++++++--------+++++++++++++++\n" ;
  print Dumper $lines->[0]->[2];
   print Dumper $renglon;
   print $file;
  print "\n++++++--------+++++++++++++++\n" ;



	print "\n--------------++++++++----------\n" ;   
	print Dumper @blocks;
        print "\n--------------------------------\n" ;  
mando referencia d la linea;
devuelvo referencia del super hash


datos ees una estructura de datos:


key:nombre demodulos
    direccion de memoria que apunta a->  secciones
                                         direccion de memoria que apunta a -> ecuaciones (en el caso de ELEMENT_DESCRIPTION)


estoy en seccione 5, en parsecua linea 582
--> en RUN CONTROLS: solamente en el super hash armar una entrada con el tipo, y dsp la ecuacion


INTERESANTE:

HACER un parser para todas las ecuaciones, para eso leer: Parser.pm y en Definitions.pm
en las subrutinas parseecua ; proecua 

ambos estan en PMP/siru


#parseecua lo que hace es armar un hash con tipo
# $hash->{'tipo'}='C';
# si en la linea esta el tipo la divido y lo pongo en
# $hash->{'tipo'}='C'; le saca todos los espacios blancos
# si en la linea esta RES entonces lo pone en
#  $hash->{'res'}=$x; SI NO LO TIENE  $hash->{'res'}=0;
$linea4=~/NONUCLEO:/ or $hash->{'tipo'} eq'C'){	      
	         $linea4=~s/NONUCLEO://;
	         $hash->{'nucleo'}=0; 
	          print "NONUCLEO|CONTROL\n";          
	      }else{
                 $hash->{'nucleo'}=1; 
	583 y parseecua    
en definitiva el parseecua lo que haces es caracterizar
la ecuacion con:
linea
tipo
nucleo
indep
res
lineal


mientras que el proecua lo que hace es dividir
en ex y lvx
pone  $hash->{'vars'}=$lvx

    
#print "ECU: $equation\n";
        
  if ($sentence =~ $parser) { 
      
   }  # print Dumper $miDato;} 
    else {print " no  entra \n"; }
    
  if ($sentence =~ $parser) { 
      $miDato->{%/{Block}->{nombre}}->{"numero"}= %/{Block}->{numeros};
   }  # print Dumper $miDato;} 
    else {print " no  entra \n"; }


  our @secciones=("CIRCUIT DESCRIPTION", "ELEMENTS", "INITIAL CONDITIONS", "OUTPUTS",    #circuit description se lo captura antes legacy
                #5             6                     7        8            
                "RUN CONTROLS",#esta"DEFINED PARAMETERS", #ESTA"MODELS","EQUATIONS",
                #9           10          11          12                    
               #esta "VARIABLES",  "FUNCTIONS",#esta"CONSTANTS",#esta"ELEMENT DESCRIPTION",    
                                                     #element description se lo captura antes. igual se usa en forma directa
                #13                 14          15           16         17                 18     19
		"FORCED VARIABLES", "PARAPLOT", "RESULTADOS","GRAFICOS","ACEPTAR_GRAFICOS","DATA","DATABLOB",		   
		# NO DEFINIDAS
                # 20                 21           22
		"RERUN DESCRIPTION", "CONTINUE",  "RE-OUTPUT", # estos 3 se los captura antes legacy
	        );


hay que hacer cambio de model description por model definition


estoy trabajando la seccion de FUNCTIONS
