object Form1: TForm1
  Left = 0
  Height = 512
  Top = 0
  Width = 716
  Caption = 'Form1'
  ClientHeight = 512
  ClientWidth = 716
  Font.Height = -11
  Font.Name = 'Tahoma'
  OnClose = FormClose
  OnCreate = FormCreate
  LCLVersion = '0.9.28.2'
  object Button1: TButton
    Left = 56
    Height = 25
    Top = 311
    Width = 201
    Caption = 'Buscar y sustituir'
    OnClick = Button1Click
    TabOrder = 0
  end
  object eNombreVar: TEdit
    Left = 56
    Height = 21
    Top = 24
    Width = 153
    TabOrder = 1
    Text = 'eNombreVar'
  end
  object eValorVar: TEdit
    Left = 232
    Height = 21
    Top = 24
    Width = 161
    TabOrder = 2
    Text = 'eValorVar'
  end
  object Button2: TButton
    Left = 408
    Height = 25
    Top = 22
    Width = 113
    Caption = 'Definir Variable'
    OnClick = Button2Click
    TabOrder = 3
  end
  object Memo1: TMemo
    Left = 24
    Height = 233
    Top = 72
    Width = 569
    Lines.Strings = (
      '+SimRes'
      '// Poner los dos archivos que se quieran comparar. '
      '// En esta implementaci?n deben tener la misma duraci?n de paso de tiempo '
      '// y se tomaran en cuenta la cantidad de cr?nicas del que tenga el menor n?mero de cr?nicas.'
      '// Se puede poner uno solo y generar graficos con resultados de la simulación u operaciones sobre ellos'
      ''
      'C:\simsee\rundir\{$carpetaCorrida}\simres_{$semillaSim}x{$nCronicasSim}.xlt'
      '-SimRes'
      ''
      '+Fechas'
      '// Esta secci?n define una ventana de tiempo para realizar el procesos.'
      '// Es un filtro sobre los archivos simRes.'
      ''
      '//desde. Se procesar?n los pasos de tiempo cuya fecha de inicio sea superior o igual a esta fecha'
      '{$fechaIniSim}'
      '//hasta. Se procesar?n los pasos de tiempo cuya fecha de fin sea inferior a esta fecha.'
      '{$fechaFinSim}'
      ''
      '-Fechas'
      ''
      ''
      ''
      '+Indices'
      '// Esta secci?n selecciona los grupos de columnas de los simres.'
      '// Los ?ndices son conexiones a los or?genes de datos.'
      '// '
      '// Sintaxis: (nombre) (Actor) (NombreVar) (idSimRes)'
      '// (nombre) es el nombre con que se identificar? el grupo de columnas en las operaciones'
      '// (Actor) es el nombre del actor como aparece en la fila encabezado de columnas del archivo SimRes'
      '// (NombreVar) es el nombre de la variable como aparece en la fila encabezado de columnas. Si la'
      '//             variable es de las que tienen varias columnas (una por poste), poniendo el nombre'
      '//             completo se selecciona la columna. Por ej. si nombreVar= P_P1 nos referimos a la potencia'
      '//             del poste 1 del actor en cuesti?n. Si queremos que el ?ndice se refiera al conjunto de '
      '//             columnas que representan los diferentes postes, ponemos nombrevar=P (sin el _Pn).'
      '// (idSimRes) identifca el archivo SimRes sobre el que se define el indice. El idSimRes es 1 para el '
      '//             primero de los archivos definidos en la secci?n (+SimRes), 2 para el segundo y as?'
      '//             sucesivamente.'
      '//             Si la intenci?n es definir el m?smo ?ndice para todos los archivos definidos, poner'
      '//             (idSimRes=*) con lo que se definir?n los ?ndices (nombre)1, (nombre)2 y as? sucesivamente'
      '//             para cada SimRes.'
      ''
      ''
      '// nomIndice'#9'nomActor'#9'nomVar'#9'numSimRes'
      'i_Dem  dem_UY_2001_2018 P  1'
      ''
      'i_cmg Montevideo cmg 1'
      ''
      ''
      '// potencias de las m?quinas de falla'
      'i_PF1'#9'dem_UY_2001_2018'#9'PF1'#9'1'
      'i_PF2'#9'dem_UY_2001_2018'#9'PF2'#9'1'
      'i_PF3'#9'dem_UY_2001_2018'#9'PF3'#9'1'
      'i_PF4'#9'dem_UY_2001_2018'#9'PF4'#9'1'
      ''
      '// Hidraulicas'
      'i_Bonete Bonete P 1'
      'i_Palmar Palmar P 1'
      'i_Baygorria Baygorria P 1'
      'i_SG SG P 1'
      ''
      'i_QApBonete Bonete QAportesP 1'
      'i_QApPalmar Palmar QAportesP 1'
      'i_QApSG SG QAportesP 1'
      ''
      '// T?rmicas'
      'i_5ta "CB-5ta-FOP" P 1'
      'i_6ta "CB-6ta-FOP" P 1'
      'i_CTR "CTR-Gasoil" P 1'
      'i_GenDis Botnia P 1'
      'i_PTI PTI_GO P 1'
      'i_SalaB SalaB_FO P 1'
      'i_Maldonado TGAA_GO P 1'
      ''
      ''
      ''
      '-Indices'
      ''
      '+CronVars'
      '// En esta secci?n se definen las variables CRONIZADAS en la que se guardar?n los resultados'
      '// de las operaciones cronizadas.'
      '// Sintaxis: (nombre)'
      '// Simplemente un rengl?n por variable indicando el nombre de la misma.'
      '// Estas variables, son matrices de dos dimensinones y almacenan los valores para cada paso de '
      '// simulaci?n de los seleccionados por el filtro (+Fechas) y para cada una de las cr?nicas'
      '// inclu?das en los archivos SimRes. El valor guardado ser? el resultado de alguna de las operaciones'
      '// definidas en las secciones siguientes.'
      ''
      'falla   // MWh de falla'
      'demanda  // MWh demanda'
      ''
      'gter  // generacion t?rmica'
      'ghid // generacion hidraulica'
      'cmg'
      'QApBonete'
      'QApPalmar'
      'QApSG'
      ''
      '-CronVars'
      ''
      ''
      '+CronOpers'
      '// OPeraciones Cr?nicas.'
      '// Estas operaciones son ejecutadas para cada paso de tiempo y cada crónica de los archivos SimRes.'
      '// El barrido se hace en forma simult?nea sobre los diferentes archivos SimRes.'
      '// Sintaxis: (nombreOper) (resultado) [(resultado)] (param1)....(paramN)'
      '//   Donde (nombreOper) debe ser una de las operaciones definidas,'
      '//     (resultado) debe ser una de las variables definidas en (+CronVar) y los parámetros serán los que correspondan'
      '//   a dicha operaci?n.'
      '//'
      ''
      ''
      '// OPERACIONES DEFINIDAS'
      '// entre <> ponemos la sintaxis de la operaci?n, luego a descripci?n.'
      '//'
      '// < suma resCronVar param1Idxs > '
      '//       Suma los valres seleccionados por los ?ndices (param1Idxs) y el resultado se'
      '//       guarda en (resCronVar).'
      '//'
      '// < sumaConSigno resPosCronVar resNegCronVar param1Idxs >'
      '//       Suma los valores seleccionados por los ?ndices (param1Idxs) y el resultado lo'
      '//       guarda en (resPosCronVar) o (resNegCronVar) seg?n sea positivo o negativo.'
      '//       Se pens? para analizar el flujo por una interconexi?n entre pa?ses y poder as?'
      '//       tener por separado flujo de importaci?n y de exportaci?n.'
      '// '
      '// < promedio resCronVar param1Idxs >'
      '//       Caclula el promedio de los valores seleccionados por (param1Indxs) y lo guarda'
      '//       en (resCronVar)'
      '//'
      '// < sumaProductoConDurpos resCronVar param1Idxs >'
      '// sumaProductoConDurposHasta resCronVar param1Idxs kposteHasta_integer'
      ''
      '// < sumaDobleProductoConDurposTopeado resSPCronVar resRecorteCronVar paramAIdxs paramBIdxs '
      'TopeDeB_NReal>'
      '// Calcula la suma producto de los valores seleccionados por paramAIdxs y paramBIdxs, considerando topeados'
      '// los valroes B por el valor del par?metro TopeDeB. '
      '// Los resultados e cargan en resSPCronVar y los valores recortados se cargan en resRecorteCronVar.'
      '// Si no interesa asignar los recortes se puede poner "nil" en resRecorteCronVar.'
      '// Esta operaci?n es ?til para calcular remuneraciones al spot. Para ello poner en paramBIdxs los indices'
      '// que seleccionan los costos marginales de un nodo y en TopeDeB_NReal el tope puesto al precio spot.'
      ''
      ''
      ''
      '// <suma_m resCronVar; params: TDAOfTVarIdxs );'
      ''
      '// "suma_m" Esta operaci?n realiza la suma de un conjunto de variables especificadas como ?ndices.'
      '//          el primer par?metro tiene que ser un entero indicando la cantidad de ?ndices que se sumar?n.'
      '//          el resto de los par?metros son los nombres de cada uno de los ?ndices a sumar.'
      '//          Por Ejemplo, si los ?ndices iA_GWh e iB_GWh seleccionan las energias generadas por la central'
      '//          A y la central B respectivamente en todos sus postes, la siguiente definicion guardaría'
      '//          la energ?a generada por las dos centrales en la variabel sumE1E2 que tendr?a que definirse en (+CronVar)'
      '//          '
      '//          suma_m sumE1E2 iA_GWh iB_GWh'
      ''
      '// promedio_m( res: TCronVar; params: TDAOfTVarIdxs );'
      '// sumaProductoConDurpos_m( res: TCronVar; params: TDAOfTVarIdxs );'
      ''
      ''
      ''
      ''
      'sumaProductoConDurpos_m falla 4 i_PF1 i_PF2 i_PF3 i_PF4'
      'sumaProductoConDurpos demanda i_Dem'
      ''
      'sumaProductoConDurpos_m ghid 4 i_Bonete i_Palmar i_Baygorria i_SG'
      'sumaProductoConDurpos_m gter 7 i_5ta i_6ta i_CTR i_GenDis i_PTI i_SalaB i_Maldonado'
      ''
      'promedio cmg i_cmg'
      'promedio QApBonete i_QApBonete'
      'promedio QApPalmar i_QApPalmar'
      'promedio QApSG i_QApSG'
      ''
      ''
      '-CronOpers'
      ''
      '+PostOpers'
      ''
      '-PostOpers'
      ''
      '+PrintCronVars'
      '//nomCronVar'#9'  nombreHoja'#9'titulo'#9'          unidades igitos decimales Print_Todas'#9'Print_promedio'#9
      'n  Print_probAisladas[i]  chart_Mat '
      'minEjeYAuto'#9'maxEjeYAuto minEjeY MaxEjeY'
      'histograma demanda            demanda'#9'"falla"           [MWh]    8     0'#9'    false       true            0                         true   '
      '   '
      'true        true        0       0'
      'histograma falla              falla'#9'"falla"           [MWh]    8     0'#9'    false       true            4  0.05 0.3 0.7 0.95        true      '
      'true        true        0       0'
      ''
      'histograma ghid               GenHidro'#9'"Generaci?n hidr?ulica"   [MWh]    8     0'#9'    false       true    4  0.1 0.3 0.7 0.9 '
      '       true      '
      'true        true        0       0'
      'histograma gter               GenTer'#9'"Gerenaci?n T?rmica"      [MWh]    8     0'#9'    false       true    4  0.1 0.3 0.7 0.9 '
      '       true      '
      'true        true        0       0'
      ''
      'histograma cmg               cmg'#9'"Costo Marginal"      [USD/MWh]    8     0'#9'    false       true    4  0.1 0.3 0.7 0.9 '
      '       true      '
      'true        true        0       0'
      'histograma  QApBonete           QApBonete'#9'"QApBonete"      [m3/s]    8     0'#9'    false       true    4  0.1 '
      '0.3 0.7 0.9        true      '
      'true        true        0       0'
      'histograma  QApPalmar           QApPalmar'#9'"QApPalmar"      [m3/s]    8     0'#9'    false       true    4  0.1 '
      '0.3 0.7 0.9        true      '
      'true        true        0       0'
      'histograma  QApSG               QApSG'#9#9'"QApSG"      [m3/s]    8     0'#9'    false       true    4  0.1 0.3 0.7 0.9 '
      '       true      true      '
      '  true        0       0'
      ''
      ''
      '-PrintCronVars'
    )
    TabOrder = 4
  end
end
