Esempio n. 1
0
 def test_unidades_tiempo_definidas(símismo):
     bf = ModeloPrueba(unid_tiempo='દિવસ')
     cnctd = Conectado(bf, símismo.mds)
     cnctd.conectar(var_mds='Aleatorio', var_bf='Escala', mds_fuente=False)
     cnctd.estab_conv_unid_tiempo(unid_ref='día', unid='દિવસ')
     res = cnctd.simular(10, vars_interés=['bf_Escala', 'mds_Aleatorio'])
     npt.assert_array_equal(res['mds_Aleatorio'], np.arange(11 * 30, step=30))
                        runs_complex[run_name] = {
                            'Capacity per tubewell': cp,
                            'Fw': fw,
                            'Policy Canal lining': cl,
                            'Policy RH': rw,
                            'Policy Irrigation improvement': ir
                        }

    # 3. Now create the model
    # Create a coupled model instance
    modelo = Conectado()

    # Establish SDM and Biofisical model paths. The Biofisical model path must point to the Python wrapper for the model
    modelo.estab_mds(os.path.join(os.path.split(__file__)[0], 'Vensim', 'Tinamit_Rechna.vpm'))
    modelo.estab_bf(Envoltura)
    modelo.estab_conv_unid_tiempo(unid='season', unid_ref='mes', factor=6)

    # Couple models(Change variable names as needed)
    modelo.conectar(var_mds='Soil salinity Tinamit CropA', mds_fuente=False, var_bf="CrA - Root zone salinity crop A")
    modelo.conectar(var_mds='Soil salinity Tinamit CropB', mds_fuente=False, var_bf="CrB - Root zone salinity crop B")
    modelo.conectar(var_mds='Area fraction Tinamit CropA', mds_fuente=False,
                    var_bf="Area A - Seasonal fraction area crop A")
    modelo.conectar(var_mds='Area fraction Tinamit CropB', mds_fuente=False,
                    var_bf="Area B - Seasonal fraction area crop B")
    modelo.conectar(var_mds='Watertable depth Tinamit', mds_fuente=False, var_bf="Dw - Groundwater depth")
    modelo.conectar(var_mds='ECdw Tinamit', mds_fuente=False, var_bf='Cqf - Aquifer salinity')
    modelo.conectar(var_mds='Final Rainfall', mds_fuente=True, var_bf='Pp - Rainfall')
    modelo.conectar(var_mds='Lc', mds_fuente=True, var_bf='Lc - Canal percolation')
    modelo.conectar(var_mds='Ia CropA', mds_fuente=True, var_bf='IaA - Crop A field irrigation')
    modelo.conectar(var_mds='Ia CropB', mds_fuente=True, var_bf='IaB - Crop B field irrigation')
    modelo.conectar(var_mds='Gw', mds_fuente=True, var_bf='Gw - Groundwater extraction')
Esempio n. 3
0
        conv={
            'Precipitación': 1,
            'Temperatura mínima': 1,
            'Temperatura máxima': 1
        })

    modelo.mds.conectar_var_clima(var='Tmin',
                                  var_clima='Temperatura mínima',
                                  conv=1)
    modelo.mds.conectar_var_clima(var='Tmax',
                                  var_clima='Temperatura máxima',
                                  conv=1)
    modelo.mds.conectar_var_clima(var='RainfallTinamit',
                                  var_clima='Precipitación',
                                  conv=0.001)
    modelo.estab_conv_unid_tiempo('mes', 6)

    vals_inic = {x: {'mds': v} for x, v in runs.items()}
    dibs = [
        dict(geog=Rechna_Doab,
             var='Watertable depth Tinamit',
             directorio='Maps'),
        dict(geog=Rechna_Doab,
             var='Soil salinity Tinamit CropA',
             colores=-1,
             directorio='Maps')
    ]

    modelo.simular_grupo(paso=1,
                         t_final=100 * 2,
                         t_inic='01/11/1989',