vSimSEESimulador_ = '_172';
rch@20171229 - Cerrando el 2017 -
1) Sanción del Precio Spot. (Característica EN PRUEBA)
===========================
Se agrega mecanismo por el cual los NODOS calculan el PrecioSpot del nodo.
Para ello a las Demandas se le agregó un parámetro "Prioridad de la demanda para sanconar Spot:"
Este valor debe ser 0 (CERO) para las Demandas que participan de la sanción del
Precio Spot y > 0 para aquellas que no participan (Por ej. demandas de exportación Spot)
A los Actores Generadores se les agregó la característica de publicar un cv_Spot
que es el valor a considerar como costo variable de ese generador para la sanción
del precio spot.
Esta característica está EN PRUEBA, dado que quedan aspectos por resolver como
es el cómo considerar la sanción del Spot en salas con más de un nodo y Arcos.
Por ahora se recomienda NO usar esta característica en salas con más de un Nodo.
En las Hidráulicas con Embalse se agregan los dinámcos parámetros:
cv_Spot_Acordado [USD/MWh] y P_min_Forzada [MW]
Estos parámetros NO intervienen en la operación, son solo a los efectos del
cálculo del precio Spot. La idea es que con cada Programación Semanal (o reprogramación)
se cargen los valores que serán considerados para la sanción del precio Spot coincidentes
con la regla de despacho fijada para el período. Las potencias mínimas, son para reflejar
que las condiciones de Turbinado Mínimo (de Salto y/o Río Negro) determinan un nivel
de generación mínimo forzado que no debe ser considerado para la formación del precio Spot.
Cada actor estima su cv_Spot. En particular las Hidráulicas con Embalse lo hacen
como cv_Spot = CMG - MLRC(P_Gen) siendo CMG, el Costo Marginal de Generación
del Nodo al que está conectada la central y MLRC(P_Gen) el Multiplicador de Lagrange
de la restricción de caja de la Potencia Generada escalado para expresarlo en USD/MWh
Esta estimación difiere del Valor del Agua de la central en los casos en que
no es posible sacarle el máximo provecho al agua en el presente. A modo de ejemplo,
si hay una restrición de erogar lo máximo posible por encima de determinada cota,
el Valor del Agua (valor para el futuro) puede serguir siendo > 0 pues aunque haya
que abrir vertederos, el futuro tendrá menor costo solo por el hecho de tener más
para turbinar. Pero dado que estamos obligados a turbinar o verter, aunque para
el futuro el agua tenga valor, dado que no tenemos la opción de mantenerla en
el embalse, estamos dispuestos a pagar CERO por otro recurso que la sutituya
en el presente. La estimación de cv_Spot = CMG - MLRC(P_Gen) intenta estimar
el valor presente del recurso.
Si hay un valor cv_Spot_Acordado se utiliza en lugar del cv_Spot para la sanción
del precio spot. Si no se especifica un cv_Spot_Acordado se utiliza el cv_Spot
estimado para realizar el cálculo del precio Spot.
En mecanismo completo es así: a) Durante la Simulación, luego de resuelto un
paso, los Actores leen los resultados del paso y tienen que calcular en ese
momento el cv_Spot (en el caso de las Hidro con Embalse si hay un valor acordado
usa el acordado). Como en la estimación, los actores pueden precisar conocer
el CMG del Nodo, los Nodos ejecutan primero que todos los demás la lectura de
resultados. b) Luego de que todos los Actores han leído los resultados del paso
y calculado su cv_Spot, los Nodos proceden a sancionar el Precio Spot. Para ello
hacen una lista de los generadores con sus potencias inyectadas por orden creciente
de cv_Spot y una lista con las Demandas con sus potencias ordenadas por
el valor de "Prioridad de la Demanda para sanción del Spot". Luego determinan
hasta qué recurso fue despachado para abastecer la suma de las demandas con
prioridad = 0 siendo el cv_Spot del último recurso despachado con ese propósito
el que determina el Precio Spot del Nodo.
2) Mejora en la representación del control de cota de las Hidráulicas con Embalse.
==================================================================================
Dado que con criterior operativos en oportunidades no es desable dejar bajar las cotas
de los lagos a niveles que compromentan la disponibilidad de Potencia en caso de no
verificarse caudales de aportes significativos se agrega al control de cota de las
hidráulicas con embalse la posibilidad de especificar un VALOR DEL AGUA en USD/Hm3
a ser considerado para el despacho si se viola la consigna de control.
Esta posibilidad ya existía, lo que se agrega ahora el la opción "Control Condicional"
que lo que hace es si el VALOR DEL AGUA calculado por la optimización es más conservador
respecto de la restricción de control, que el valor resultante de la penalidad impuesta
por el VALOR DEL AGUA especificado, vale la de la optimización sino vale la impuesta.
Esto permite especificar que para cotas inferiores a una dada el valor del agua
considerado para el despacho sea superior o igual a uno dado. O si el control
es de no superar una cota, permite especificar que el valor del agua por encima
de determinada cota sea menor o igual a uno especificado.
Para lograr este comportamiento hay que especificar la cota y el valor del agua
y marcar los casilleros "valor exacto" y "control condicional".
3) Manejo de los forzamientos.
==============================
Para dar más flexibilidad a la fijación de Forzamientos. Hasta ahora solo se
permitía fijar una POTENCIA forzada. Ahora se permite fijar extremos mínimo
y máximo y activar por separado las restricciones de los extremos.
La opción "Fijar P" permite especifica un único valor de P y actúa como iposición
de potencia a Inyectar.
Las opcoines P_máx y P_mín permiten activar y especificar potencías máximas
y mínimas a imponer.
3) Manejo de Conos de Pronósticos en modelos CEGHs.
===================================================
Hasta esta versión, los Conos de Pronósticos de los CEGHs no tenían
posibilidad de indicar su Fecha de Inicio. Lo que se suponía es
que el Cono iniciaba al inicio del Horizonte de estudio. Entre otras
cosas, esto IMPONIA la necesidad de usar igual fecha de inicio de Optimización
y de Simulación para que la información de los pronósticos tuviera sentido.
Igualmente era una fuente constante de error, dado que al re-utilizar una Sala
con pronósticos cargados y cambiar las fechas de inicio de Optimización/Simulación,
automáticamente se estaba desplazando los pronósticos a coincidir con las nuevas
fechas lo que generalmente era un error.
3.a) Para eliminar esta fuente de errores y para permitir la actualización de los
pronósticos con la cadencia en que están disponbiles se agregó la posibilidad
de especificar una Fecha de Inicio en el formulario que permite el ingreso
de los pronóticos en lasa Fuentes Sintetizador CEGH.
3.b) Se agregó parámetro "ai[p.u.]" en cada pronóstico que permite especificar
la "apertura inicial" del Cono. Antes se suponía que para el primer dato de la
guía la apertura inicial era CERO. Luego los parámetros NPSA y NPAC regulaban
la cantidad de pasos sin apertura y la cantidad de paso en que la apertura pasaba
de cero a 1. Ahora, se inicia el cono con apertura ai, se mantiene durante NPSA
en ese valor y el parámetro NPAC indica en cuantos paso luego de transcurridos los
NPSA pasará de ai a 1.
Al implementar estas nuevas funcionalidades se revisó el tratamiento de los conos
de pronósticos tanto en simulación como en optimización y se implementó el manejo
de los mismos en CEGHs con Filtros Variables. Generalmente en las Salas usadas
para las programaciones Estacionales y Semanales no se usan CEGHs con Filtros Variables
pero con la creación de un nuevo modelo de Demanda que depende de un CEGH con
Filtro Variable fue necesario realizar esta implementación para que los pronósticos
sean mejor considerados en la etapa de Optimización.
//VERSION_ArchiTexto = 166 ; // xc@201712111510
// rch&dv@201712271020
// se quita fechaIniCono como parámetro persistente de cada pronóstico y se agrega
// parámetro con el mismo nombre en cada Escenario de Pronósticos (TPronosticos)
// VERSION_ArchiTexto = 165 ; // xc@201712111510
//Se agregar los parametros: activar_Pmax, activar_Pmin, flg_fijarP: Boolean;
// P_max, P_min: NReal;
//En TFichaForzamientos. Para poder fijar restricciones de caja
//distintas al de igualdad para forzamiento.
vSimSEESimulador_ = '_171';
rch@201712011347 bugfix en la versión 167 se pasó a compilar de forma de
representar en forma explícita la restricció dinámica de los embalses
en esa modalidad se había cometido un error que hacía que no aplicara la restricción
de erogado mínimo con costo de falla. (no funcionaba).
// VERSION_ArchiTexto = 164 ; //rch@201712031916
// Cambio el nombre del parámetro P por Probabilidad en los conos de pronósticos
// y agrego parámetros FechaIniSesgo (ya existía, lo hago persistente) y
// parámetro aipu = Apertura Inicial en Por Unidad, para poder especificar
// que el ruido del cono, en lugar de comenzar en CERO se pueda hacer que comience
// en un valor 0.0 <= aipu <= 1.0
// La idea sería que en NPSA desde FechaIniSesgo
vSimSEESimulador_ = '_170';
rch@20171201 bugfix en sanción del precio spot.
se colgaba cuando aparecía falla por un índice fuera de rango.
vSimSEESimulador_ = '_169';
20171127 mejoras en sanción del precio spot.
bugfix, las máquinas en mantenimiento no-juegan.
vSimSEESimulador_ = '_168';
rch@20171121 versión de transición. INcluye nuevos parámetros en los
generadores hidráulicos para sanción del precio spot.
vSimSEESimulador_ = '_167';
rch@20171116
1) Se recompila con versión que representa la restricción dinámica de las hidro con embalse
en forma explícita para que el multiplicador de lagrange de la restricción de balance
de erogado de Baygorria (es de pasada pero descarga en Palmar que tiene embalse) represente
el incremento de costo de llevarse un Hm3 de la entrada de Baygorria.
2) Se pone operativo la publicación del costo variable para sanción de spot de los generadores,
la prioridad de demanda para sanción del spot y la sanción del precio spot por parte del Nodo
con la publicación de la correspondiente variable.
vSimSEESimulador_ = '_166';
rch@201711071711
1) BUGFIX, en la versión anterior se introdujo error por el cual las Demandas se anulaban
si no tenían asociada una fuente para darle variación. El error fue introducido al intentar
solucionar en esclavizado de una fuente diaria en una sala de padso semanal para introducir
ruido dependiente de la temperatura en la demanda.
2) BUGFIX en EsclavizadorSubMuestreado que no funcionaba adecuadamente en caso de fuentes
de paso Diario en salas de Paso Semanal.
3) Entre las versiones 164, 165 y 166 se cambió la implementación de la afectación de las
Demandas con las fuentes. Anteriormente, se usaba la Demanda "sin afectación" para el cálculo
de la Demanda Neta y posterior POSTIZADO. Ahora se utiliza la Demanda "afectada" por el valor
de las fuentes. AL introducir este cambio fue que se cometió el error que dio lugar al
BUGFIX del numeral 1 haciendo que si no había una fuente la demanda quedara en CERO.
//VERSION_ArchiTexto = 163 ; //xc@201730111027
//Se agrega P_forzada a THidroconEmbalse
//VERSION_ArchiTexto = 162 ; //xc@201711201252
//Se agrega cv_Spot_acordado y flg_Aplica_cv_Spot_Acordado a THidroConEmbalse.
//VERSION_ArchiTexto = 161; // // xc@201711131130
//Se agrega Spot_max y Spot_min a los TNodo;
//VERSION_ArchiTexto = 160; // // xc@201711131043 se pasó Prioridad_DemSpot
//a TActorUniNodal.
//VERSION_ArchiTexto = 159; // xc@201711101215
// agrega Prioridad_DemSpot a los actores TDemanda para sanción de precio Spot.
vSimSEESimulador_ = '_165';
rch@201711071050
1) Se modifica la fórmular de pérdida de salto por caudal erogado en as hidráulicas.
la fórmula original era dh = ( cb * Q + ca ) * Q
y generalmente el coeficiente cb es negativo siendo la forma de la curva la de
una parábola invertida. En ocasiones de caudales superiores al caudal para el que se
da el máximo el dh comienza a reducirse. Para evitar este degeneramiento de la representación
se impuso que si Q > - ca/(2cb) dh = -( ca * ca / 4 ) / cb (= valor del máximo de la parábola)
2) Se agrega la opción de que el control de cota en las centrales con embalses aplique si
implica una variación del valor del agua y sino no. Control Condicional.
// VERSION_ArchiTexto = 158; // rch@201711071057 agrego posibilidad de Control Condicional
// en la cota de las hidro con embalse.
vSimSEESimulador_ = '_164';
rch@20171024
1) Agrego posibilidad de especificar en los escenarios el archivo
CF que se debe utilizar para simulación.
2) BugFix en clase mercado spot, la variable local de la clase lpd ocultaba
la de la clase madre lo que hacía que en el Editor no Listara las capas
en estos actores.
3) Se ipone que dhQE tiene que tener derivada positiva.
// VERSION_ArchiTexto = 157;// rch@20171024 agrego posibilidad de especificar archi_cf en escenario
// esto es para facilitar que un escenario pueda ser de simulación con la Política de Operación
// de otro Escenario.
vSimSEESimulador_ = '_163';
rch@201710111242 bugfix. En alguna versión anterior se cambió la forma de leer
las series históricas en los CEGH y quedó mal. El síntoma es que directamente no se
podían abrir salas con series históricas en los CEGH.
vSimSEESimulador_ = '_162';
rch@201710102053 bugfix. en TGlobs.SorteosDelPaso;
mezclaba las horas del paso haciendo que se puedieran seleccionar horas
de otro poste. Este bug solo afecta al Resumir de Maxima Varianza en
el caso de fuentes exclavizadas en saladas de mayor paso de tiempo.
// VERSION_ArchiTexto = 156;// mc_ld@20170917 agrego factor de filtracion que se eroga
// checkbox para indicar si se ejecuta o no SimRes3 en cada escenario
vSimSEESimulador_ = '_161';
rch@20170728 Bugfix. Las fuentes esclavizadas no publicaban bien las variables en el caso
en que en la sala estaba marcado "publicar solo variables usadas en SimRes3".
Se implementó que el Esclavizador llama los métodos de la esclava.
// VERSION_ArchiTexto = 156;// mc_ld@20170917 agrego factor de filtracion que se eroga
// checkbox para indicar si se ejecuta o no SimRes3 en cada escenario
vSimSEESimulador_ = '_160';
rch@20170826 Bugfix, se había deshabilitado el funcionamiento de "sincronizar con históricas"
para el caso de simulación con series históricas. Se vuelve a habilitar.
// VERSION_ArchiTexto = 155;// rch@20170805 agrego
// checkbox para indicar si se ejecuta o no SimRes3 en cada escenario
// VERSION_ArchiTexto = 154;// rch@20170805 agrego modo_Ejecucion en la sala
// para permitir desde el editor indicar que se ejecuten todos los escenarios
// activos.
vSimSEESimulador_ = '_159';
rch@20170713 Bugfix, en el manejo del CFAux en la simulaicón había
dejado de funcionar correctamente impidiendo leer la variable en
SimRes3.
vSimSEESimulador_= '_158';
rch@20170703 Cambiamos parámetros en Central Solar PV. Ahora se especifica
la Potencia de Pico para 1000 W/m2 a 25C y las pérdidas eléctricas (cableado+trafo+inv)
y la Potencia máxima de Inversor. Todo por MODULO.
// VERSION_ArchiTexto = 153;// rch@20170629 cambio la definición de las plantas de paneles
// para que en lugar de ingresar el area del TOTAL se ingrese la PMax_100_W_m2 de cada múdulo
// y la PMax_Inversor de cada modulo
//VERSION_ArchiTexto = 151; // Curso SimSEE2017 agregamos Condicion Central Hidro en arcos.
// VERSION_ArchiTexto = 150; // Curso SimSEE2017 agregamos Restriccion arcos gemelos.
rch@20170627 Bugfix en usolarpv daba error si se ponía PMax = 0 en la ficha dinámica
de parámetros.
vSimSEESimulador_= '_157';
rch@20170606
1) Bugfix. Fuente selector Horario. Le faltaba inherited Create a la clase y eso
hace que se rompa el mecanismo de persistencia por lo cual no se salvava.
2) elimino el nilonclose de los trazosxy porque aveces daba error
en calibrar cono.
vSimSEESimulador_= '_156';
rch@201705261629 bugfix fddp.TMadreUniforme.randomIntRange tenía un error
por lo cual los extremos del rango tenían una probabilidad de ocurrir 0.5 de la
del resto de los puntos del rango. Este bug queda totalmente soslayado por el que se
comenta a continuación. El sorteo de enteros se utiliza en el resumir (sin promediar) pero
el segundo bug es el que realmente cambia los valores.
rch@201705291012 bugfix GRAVE. Había un error en el resumen de las fuentes esclavizadas
en un sub-muestreo que hacía que al usar en conjunto con NETEAR PARA POSTIZAR se creará
un sesgo en la elección del representante del poste en los generadores resumidos (eólica, solar)
hacia el lado de privilegiar las horas de mayor demanda neta lo que es lo mismo que sesgar hacia
una menor generación de las renovables.
vSimSEESimulador_= '_155';
rch@20170516
bugfix en exportación a ods de las fichas dinámicas de fuentes.
vSimSEESimulador_= '_154_ods';
rch@201704240835
Cambio la exportación/importación de Excel a que guarde/lea un archivo .ods
y luego lo abra con la función opendocument() para asegurar que abra el archivo
con la aplicación que tenga instalada para ese propósito. Este cambio fue necesario
pues en FING el estandar es LibreOffice (u OppenOffice) y no hay Excel instalado.
vSimSEESimulador_= '_153_Barumi';
rch@20170314 bugfix 1) en editor de fichas hidro con embalse e hidro con bobmeo
el bug impedía marcar la imposición de erogado mínimo por poste salvo que se hubiera
marcado activar la restricción de QTMin. Ahora lo permite si cualquiera de las restricciones
QTmin o QTmin_falla está activada.
bugfix 2) en cálculo de GRADIENTES DE INVERSION. En la versión 149 se separó del cálculo del
Costo Directo del Paso de los actores y faltó considerar este cambio en el cálculo de los
Gradientes de Inversión. Esto afecta los resultados de salas que tuvieran marcado ese resultado
y el error salta a la vista pues los gradientes dan POSITIVOS por faltar restar los pagos por
Potencia y Energía.
vSimSEESimulador_= '_152_Taslimah';
rch 20170309 Agrego manejo de Unidades (Inverson/Rectificador/Celda) a los bancos
de batería y PagoPorDisponibilidad_USDxMWhh a los bancos de batería.
// VERSION_ArchiTexto = 149; // rch@20170309 agrego pagoPorDisponibilidad y Unidades en BancoBat
vSimSEESimulador_= '_151_Taslimah';
rch@201702051020 BUGFIX *****
Había un error que hacía que se leyera mal (desplazada) la Política de Operación
en salas donde las fechas iniciales de Simulación y Optimización NO-COINCIDIAN.
El error impacta en resultados de Salas en que las fechas iniciales de Opt y Sim
no coinciden.
Además se agregó como variable persistente el HusoHorario_UTC para que SimSEE
pueda funcionar adecuadamente con en otras ubicaciones. Por Defecto el HusoHorario_UTC = -3 (Uruguay)
// VERSION_ArchiTexto = 148; // rch@201702051013 se agrega persistencia de variable husoHorario_UTC de globs