IOAPI

De Wikicima
Saltar a: navegación, buscar

Página con la utilización de las distintas herramientas IOAPI

Directorio de trabajo

/home/solange.luque/estudios/IOAPI

Vigilar la coherencia entre el entorno cargado y la compilación de la IOAPI

source /opt/env_scripts/load_gnu-10.2.1_mpich-3.4.2.sh

Directorio de la librería

setenv ROOT_IOAPI /home/solange.luque/libraries/ioapi/v3.2-20200828/gnu/Linux2_x86_64/

Contenido

wrfgriddesc

Programa para crear el GRIDDESC de un archivo WRF

Workdir:

IOAPI/wrfgriddesc

Archivo test:

/home/solange.luque/salidas/lluis.fita/estudios/ChemGBsAs/sims/weeks/20121110/control/wrfout_d01_2012-11-13_00:00:00

Variables de entorno

setenv PROMPTFLAG yes
setenv WRFFILE /home/solange.luque/salidas/lluis.fita/estudios/ChemGBsAs/sims/weeks/20121110/control/wrfout_d01_2012-11-13_00:00:00
setenv OUTDESC /home/solange.luque/estudios/IOAPI/wrfgriddesc/ChemGBsAs_d01.griddesc
setenv CRDNAME ChemGBsAs_d01
setenv CROGRID ChemGBsAs_d01_cpgrd
setenv DOTGRID ChemGBsAs_d01_dotgrd
setenv STXGRID ChemGBsAs_d01_xstag
setenv STYGRID ChemGBsAs_d01_ystag

Ejecutando

${ROOT_IOAPI}/wrfgriddesc

Contenido archivo salida

cat ChemGBsAs_d01.griddesc 
 !  coords --line:  name; type,  P-alpha, P-beta, P-gamma, xcent, ycent
 'ChemGBsAs_d01'
     2   -3.5600000D+01   -3.3600000D+01   -5.8400000D+01   -5.8400000D+01   -3.4600000D+01
  
 ' ' !  end coords.  grids:  name; xorig, yorig, xcell, ycell, ncols, nrows, nthik
  
 'ChemGBsAs_d01_cp'
 'ChemGBsAs_d01'  -8.2512722E+05  -7.5011479E+05   1.5000000E+04   1.5000000E+04   110   100     1
 'ChemGBsAs_d01_do'
 'ChemGBsAs_d01'  -8.3262722E+05  -7.5761479E+05   1.5000000E+04   1.5000000E+04   111   101     1
 'ChemGBsAs_d01_xs'
 'ChemGBsAs_d01'  -8.3262722E+05  -7.5011479E+05   1.5000000E+04   1.5000000E+04   111   100     1
 'ChemGBsAs_d01_ys'
 'ChemGBsAs_d01'  -8.2512722E+05  -7.5761479E+05   1.5000000E+04   1.5000000E+04   110   101     1
 ' ' !  end grids

wrftom3

Programa para transformar un archivo WRF a un archivo IOAPI.

Workdir:

IOAPI/wrftom3

Archivo test:

/home/solange.luque/salidas/lluis.fita/estudios/ChemGBsAs/sims/weeks/20121110/control/wrfout_d01_2012-11-13_00:00:00

Archivos de configuración

griddesc

Archivo con la información geográfica (descripción GRIDDESC). Detalles sobre el significado de las variables en VarsIOAPI GRIDDESC

Nombre archivo ChemGBsAs_d01.griddesc, generado con wrfgriddesc

configuración

Archivo con la configuración del programa (dimensiones, variables, ... que se quieren agarrar)

1-layer no staggered ni en x, ni en y

Nombre archivo ChemGBsAs_d01_wrftom3_1lay_unstag.conf a usar (variable OUTGRID) con el grid ChemGBsAs_d01_cp

"T2" "tas"
"U10" "uas"
"V10" "vas"

3D no staggered ni en x, ni en y

Nombre archivo ChemGBsAs_d01_wrftom3_3D_unstag.conf

"QVAPOR" "qv"

3D no staggered (suelo) ni en x, ni en y

Nombre archivo ChemGBsAs_d01_wrftom3_3Dland_unstag.conf

"SMOIS" "swvl"

3D no staggered ni en x, ni en y, staggered en z

Nombre archivo ChemGBsAs_d01_wrftom3_3D_zstag.conf

"W" "wa"

3D staggered en x

Nombre archivo ChemGBsAs_d01_wrftom3_3D_xstag.conf a usar con el grid ChemGBsAs_d01_xs

"U" "ua"

3D staggered en y

Nombre archivo ChemGBsAs_d01_wrftom3_3D_ystag.conf a usar con el grid ChemGBsAs_d01_ys

"V" "va"

Variables de entorno

Recordar correr en tcsh

setenv GRIDDESC /home/solange.luque/estudios/IOAPI/wrfgriddesc/ChemGBsAs_d01.griddesc
setenv OUTGRID ChemGBsAs_d01_cp
setenv WRFFILE /home/solange.luque/salidas/lluis.fita/estudios/ChemGBsAs/sims/weeks/20121110/control/wrfout_d01_2012-11-13_00:00:00
setenv OUTFILE wrf_ChemGBsAs_d01.iopai
setenv CONFIG ChemGBsAs_d01_wrftom3_1lay_unstag.conf

Ejecución

$ROOT_IOAPI/wrftom3

Archivo salida

wrf_ChemGBsAs_d01.iopai

m3fake

Programa para crear un fichero I/O API a partir de un fichero ASCII con las variables definidas.

Workdir:

IOAPI/m3fake

Para crear el inventario de emisiones para el AMBA:

Archivos de configuración

griddesc

Archivo con la información geográfica (descripción GRIDDESC). Detalles sobre el significado de las variables en VarsIOAPI GRIDDESC

Lo podemos linkear del directorio de wrftom3

ln /home/solange.luque/estudios/IOAPI/wrftom3/Inventarios_AMBA.griddesc Inventarios_AMBA.griddesc

Este fichero es el griddesc del inventario que hicimos a mano.

ASCII con variables definidas

En este fichero están los valores que les queremos asignar a las variables. Para eso hay que agarrar el inventario que tenemos .nc y pasarlo al formato correcto para correr con esto. Esto lo hace el script nc_to_m3fake.py.

Hay que tener un csv por variable. Todavía hay que hacer bien la especiación de VOCs, pero tenemos una provisoria.

Variables de entorno

export GRIDDESC=Inventarios_AMBA.griddesc

Ejecución

El script pide varias variables por terminal. Para que no sea tan engorroso, el script run_m3fake.py escribe en un .txt todos los argumentos que se necesitan. Una vez generado el .txt args_m3fake.txt, el programa se ejecuta así (Hay que estar en la misma carpeta donde están los csv de cada variable):

$ROOT_IOAPI/m3fake < args_m3fake.txt

m3cple

Programa mapear de una grilla a otra. En particular, para mapear de la grilla del inventario a la de WRF-CMAQ

Workdir:

IOAPI/m3cple

Archivos de configuración

griddesc

Archivo con la información geográfica (descripción GRIDDESC). Detalles sobre el significado de las variables en VarsIOAPI GRIDDESC

Lo podemos linkear del directorio de wrfgriddesc

ln /home/solange.luque/estudios/IOAPI/wrfgriddec/ChemGBsAs_d01.griddesc ChemGBsAs_d01.griddesc

Este fichero es el griddesc del dominio de WRF

Inventario

Este es el que hicimos con m3fake. Lo linkeamos de ahí.

ln /home/solange.luque/estudios/IOAPI/m3fake/inv_ioapi_AMBA inv_ioapi_AMBA

Variables de entorno

setenv SYNCHFILE NONE
setenv INFILE inv_ioapi_AMBA
setenv OUTFILE inv_ioapi_AMBA_regrid
setenv GRIDDESC ChemGBsAs_d01.griddesc
setenv SCALEFAC 1.0  

NOTA: Scalefac es en realidad resolución output/resolución input. El nuestro input no es 1km exactamente, pero me parece que debiera serlo (Cuando calculamos latitudes y longitudes de nuestro inventario, me parece que calculamos todo como si las dos estaciones de referencia estuvieran en el centro de la grilla y eso no es necesariamente así. En un paper de Andrea decía que la resolución del inventario era de 1km. A chequear)

Ejecución

El script pide varias variables por terminal. Para que no sea tan engorroso, el script run_m3cple.py escribe en un .txt todos los argumentos que se necesitan. Una vez generado el .txt args_m3cple.txt, el programa se ejecuta así:

$ROOT_IOAPI/m3cple < args_m3cple.txt

Y NONE #synchfile inv_ioapi_AMBA #infile ChemGBsAs_d01_cp #output grid name 2012010 #starting date 0 #starting time 010000 #time step 24 #number time steps inv_ioapi_AMBA_regrid #outfile

Herramientas personales