コード例 #1
0
        public GUIModelConfForm()
        {
            parametrosConfiguracion = new ConfParameters();

            InitializeComponent();

            openFDAguaSuperficial.InitialDirectory = parametrosConfiguracion.carpetaDatosEntrada;
            openFDAguaCapa1.InitialDirectory       = parametrosConfiguracion.carpetaDatosEntrada;

            textBoxOpenAguaSuperficial.Text = parametrosConfiguracion.pathAguaSuperficial;
            textBoxOpenAguaPermeable.Text   = parametrosConfiguracion.pathAguaCapaPermeable;

            textBoxCapacAlmSuelo.Text     = parametrosConfiguracion.pathCapacidadAlmacenSuelo;
            textBoxConducHidrSuelo.Text   = parametrosConfiguracion.pathKConductividadHSuelo;
            textBoxDEM.Text               = parametrosConfiguracion.pathDEM;
            textBoxProfCapaPermeable.Text = parametrosConfiguracion.pathProfSuelos;
            textBoxLluvia.Text            = parametrosConfiguracion.pathLluvia;

            textBoxNts.Text = parametrosConfiguracion.escSupPasosNts.ToString();
            textBoxNt.Text  = parametrosConfiguracion.tiempoSimulacionHoras.ToString();
            textBoxTg.Text  = parametrosConfiguracion.periodoGrabacionResult.ToString();

            checkBox1.Visible = parametrosConfiguracion.debugEnablePlanchado;
            checkBox2.Visible = parametrosConfiguracion.debugEnablePlanchado;
        }
コード例 #2
0
        public GUIModelConfForm()
        {
            parametrosConfiguracion = new ConfParameters();

            InitializeComponent();

            openFDAguaSuperficial.InitialDirectory = parametrosConfiguracion.carpetaDatosEntrada;
            openFDAguaCapa1.InitialDirectory = parametrosConfiguracion.carpetaDatosEntrada;

            textBoxOpenAguaSuperficial.Text = parametrosConfiguracion.pathAguaSuperficial;
            textBoxOpenAguaPermeable.Text = parametrosConfiguracion.pathAguaCapaPermeable;

            textBoxCapacAlmSuelo.Text = parametrosConfiguracion.pathCapacidadAlmacenSuelo;
            textBoxConducHidrSuelo.Text = parametrosConfiguracion.pathKConductividadHSuelo;
            textBoxDEM.Text = parametrosConfiguracion.pathDEM;
            textBoxProfCapaPermeable.Text = parametrosConfiguracion.pathProfSuelos;
            textBoxLluvia.Text = parametrosConfiguracion.pathLluvia;

            textBoxNts.Text = parametrosConfiguracion.escSupPasosNts.ToString();
            textBoxNt.Text = parametrosConfiguracion.tiempoSimulacionHoras.ToString();
            textBoxTg.Text = parametrosConfiguracion.periodoGrabacionResult.ToString();

            checkBox1.Visible = parametrosConfiguracion.debugEnablePlanchado;
            checkBox2.Visible = parametrosConfiguracion.debugEnablePlanchado;
        }
コード例 #3
0
 public ControlEjecucionProc(ConfParameters parametrosSimulacion, GUIModelEjecForm formEjec)
 {
     formPadre               = formEjec;
     parametrosSimulador     = parametrosSimulacion;
     dataSetSimulador        = new DataSet(parametrosSimulacion);
     arrayOfMatrizFlowsEnX   = new int[parametrosSimulador.escSupPasosNts + 1][, ];
     arrayOfMatrizFlowsEnY   = new int[parametrosSimulador.escSupPasosNts + 1][, ];
     infiltradorVertical     = new InfiltracionVertical();
     escurridorSuperficial   = new EscurrimientoSuperficial();
     clusterizadorPlanchador = new ClusteringPlanchado();
     evaporador              = new Evapotranspiracion();
     infiltradorHorizontal   = new InfiltracionHorizontal();
 }
コード例 #4
0
 public ControlEjecucionProc(ConfParameters parametrosSimulacion, GUIModelEjecForm formEjec)
 {
     formPadre = formEjec;
     parametrosSimulador = parametrosSimulacion;
     dataSetSimulador = new DataSet(parametrosSimulacion);
     arrayOfMatrizFlowsEnX = new int[parametrosSimulador.escSupPasosNts + 1][,];
     arrayOfMatrizFlowsEnY = new int[parametrosSimulador.escSupPasosNts + 1][,];
     infiltradorVertical = new InfiltracionVertical();
     escurridorSuperficial = new EscurrimientoSuperficial();
     clusterizadorPlanchador = new ClusteringPlanchado();
     evaporador = new Evapotranspiracion();
     infiltradorHorizontal = new InfiltracionHorizontal();
 }
コード例 #5
0
        public DataSet(ConfParameters configurationSet)
        {
            anchoEjeX = configurationSet.anchoEjeX;
            altoEjeY = configurationSet.altoEjeY;
            dimensionCelda = configurationSet.dimensionCelda;

            DEM = new RasterDatos(configurationSet.pathDEM, anchoEjeX, altoEjeY);
            profundidadSuelos = new RasterDatos(configurationSet.pathProfSuelos, anchoEjeX, altoEjeY);

            alturaSueloPermeable = new RasterDatos(anchoEjeX, altoEjeY);
            matrizCantVariaciones = new RasterDatos(anchoEjeX, altoEjeY);

            for (int y = 0; y < altoEjeY; y++)
            {
                for (int x = 0; x < anchoEjeX; x++)
                {
                    alturaSueloPermeable.matrizDEM_[y, x] = DEM.matrizDEM_[y, x] - profundidadSuelos.matrizDEM_[y, x];
                }
            }

            kConductividadHSuelo = new RasterDatos(configurationSet.pathKConductividadHSuelo, anchoEjeX, altoEjeY);
            capacidadAlmacenSuelo = new RasterDatos(configurationSet.pathCapacidadAlmacenSuelo, anchoEjeX, altoEjeY);
            aguaSuperficie = new RasterDatos(configurationSet.pathAguaSuperficial, anchoEjeX, altoEjeY);

            auxiliarAguaCapaPermeable = new RasterDatos(configurationSet.pathAguaCapaPermeable, anchoEjeX, altoEjeY);

            aguaCapaPermeable = new RasterDatos(anchoEjeX, altoEjeY);

            //Llamado antes Normalizacion Inicial, el agua que se lee del archivo es sin tener en cuenta la porosidad
            //del suelo.
            for (int x = 0; x < anchoEjeX; x++)
            {
                for (int y = 0; y < altoEjeY; y++)
                {
                    if (capacidadAlmacenSuelo.matrizDEM_[y, x] > 0)
                    {
                        aguaCapaPermeable.matrizDEM_[y, x] = auxiliarAguaCapaPermeable.matrizDEM_[y, x] / capacidadAlmacenSuelo.matrizDEM_[y, x]
                                                            * (DEM.matrizDEM_[y, x] - alturaSueloPermeable.matrizDEM_[y, x]);
                    }
                    else
                    {
                        aguaCapaPermeable.matrizDEM_[y, x] = 0.0f;
                    }
                }
            }

            coefEvaporacion = (float)configurationSet.coefEvaporacion;
            coefManning = configurationSet.coefManning;
            periodoGrabSalidas = configurationSet.periodoGrabacionResult;
            maxCantidadVariaciones = configurationSet.maxCantidadVariaciones;
        }
コード例 #6
0
        public DataSet(ConfParameters configurationSet)
        {
            anchoEjeX      = configurationSet.anchoEjeX;
            altoEjeY       = configurationSet.altoEjeY;
            dimensionCelda = configurationSet.dimensionCelda;

            DEM = new RasterDatos(configurationSet.pathDEM, anchoEjeX, altoEjeY);
            profundidadSuelos = new RasterDatos(configurationSet.pathProfSuelos, anchoEjeX, altoEjeY);

            alturaSueloPermeable  = new RasterDatos(anchoEjeX, altoEjeY);
            matrizCantVariaciones = new RasterDatos(anchoEjeX, altoEjeY);

            for (int y = 0; y < altoEjeY; y++)
            {
                for (int x = 0; x < anchoEjeX; x++)
                {
                    alturaSueloPermeable.matrizDEM_[y, x] = DEM.matrizDEM_[y, x] - profundidadSuelos.matrizDEM_[y, x];
                }
            }

            kConductividadHSuelo  = new RasterDatos(configurationSet.pathKConductividadHSuelo, anchoEjeX, altoEjeY);
            capacidadAlmacenSuelo = new RasterDatos(configurationSet.pathCapacidadAlmacenSuelo, anchoEjeX, altoEjeY);
            aguaSuperficie        = new RasterDatos(configurationSet.pathAguaSuperficial, anchoEjeX, altoEjeY);

            auxiliarAguaCapaPermeable = new RasterDatos(configurationSet.pathAguaCapaPermeable, anchoEjeX, altoEjeY);

            aguaCapaPermeable = new RasterDatos(anchoEjeX, altoEjeY);

            //Llamado antes Normalizacion Inicial, el agua que se lee del archivo es sin tener en cuenta la porosidad
            //del suelo.
            for (int x = 0; x < anchoEjeX; x++)
            {
                for (int y = 0; y < altoEjeY; y++)
                {
                    if (capacidadAlmacenSuelo.matrizDEM_[y, x] > 0)
                    {
                        aguaCapaPermeable.matrizDEM_[y, x] = auxiliarAguaCapaPermeable.matrizDEM_[y, x] / capacidadAlmacenSuelo.matrizDEM_[y, x]
                                                             * (DEM.matrizDEM_[y, x] - alturaSueloPermeable.matrizDEM_[y, x]);
                    }
                    else
                    {
                        aguaCapaPermeable.matrizDEM_[y, x] = 0.0f;
                    }
                }
            }

            coefEvaporacion        = (float)configurationSet.coefEvaporacion;
            coefManning            = configurationSet.coefManning;
            periodoGrabSalidas     = configurationSet.periodoGrabacionResult;
            maxCantidadVariaciones = configurationSet.maxCantidadVariaciones;
        }
コード例 #7
0
        public GUIModelEjecForm(ConfParameters parameConfToEjec)
        {
            InitializeComponent();

            parametrosEjecucion = parameConfToEjec;
            ejecutadorProcesos = new ControlEjecucionProc(parametrosEjecucion, this);

            AguaSupInicValor.Text = parametrosEjecucion.pathAguaSuperficial;
            TextAguaCapaPermInic.Text = parametrosEjecucion.pathAguaCapaPermeable;
            TextDEM.Text = parametrosEjecucion.pathDEM;
            TextProfAguaPerm.Text = parametrosEjecucion.pathProfSuelos;
            TextCondHidraulica.Text = parametrosEjecucion.pathKConductividadHSuelo;
            TextAlmCapaPermeable.Text = parametrosEjecucion.pathCapacidadAlmacenSuelo;
            TextNts.Text = parametrosEjecucion.escSupPasosNts.ToString();
            TextNt.Text = parametrosEjecucion.tiempoSimulacionHoras.ToString();
            TextTg.Text = parametrosEjecucion.periodoGrabacionResult.ToString();

            totalStepsExecution.Text = TextNt.Text;

            delegadoLog = new updateInfoLog(UpdateTextLog);
            delegadoStep = new updateStepExecution(UpdateStepExecution);
        }
コード例 #8
0
        public GUIModelEjecForm(ConfParameters parameConfToEjec)
        {
            InitializeComponent();

            parametrosEjecucion = parameConfToEjec;
            ejecutadorProcesos  = new ControlEjecucionProc(parametrosEjecucion, this);

            AguaSupInicValor.Text     = parametrosEjecucion.pathAguaSuperficial;
            TextAguaCapaPermInic.Text = parametrosEjecucion.pathAguaCapaPermeable;
            TextDEM.Text              = parametrosEjecucion.pathDEM;
            TextProfAguaPerm.Text     = parametrosEjecucion.pathProfSuelos;
            TextCondHidraulica.Text   = parametrosEjecucion.pathKConductividadHSuelo;
            TextAlmCapaPermeable.Text = parametrosEjecucion.pathCapacidadAlmacenSuelo;
            TextNts.Text              = parametrosEjecucion.escSupPasosNts.ToString();
            TextNt.Text = parametrosEjecucion.tiempoSimulacionHoras.ToString();
            TextTg.Text = parametrosEjecucion.periodoGrabacionResult.ToString();

            totalStepsExecution.Text = TextNt.Text;

            delegadoLog  = new updateInfoLog(UpdateTextLog);
            delegadoStep = new updateStepExecution(UpdateStepExecution);
        }