CMAQ/pruebaAMBA
Prueba de simulado en AMBA
WORKDIR = /home/solange.luque/estudios/CMAQ-AMBA/prueba
Datos atmosféricos
Se parte de simulaciones de WRF ya realizadas ver referencia.
Datos en:
/home/solange.luque/salidas/lluis.fita/estudios/ChemGBsAs/sims/weeks/20121110/control
mcip
Se utiliza el programa de CMAQ mcip (MCIP-epa) para generar los archivos con las condiciones atmosféricas necesarias para CMAQ. Seguimos los mismos pasos que [[1]]
Tener la script para correr el programa:
export CMAQ_HOME=/home/solange.luque/MODELOS/CMAQ/intel/src/CMAQ-master/CMAQ_Project/ cd /home/solange.luque/MODELOS/CMAQ/intel/src/CMAQ-master/CMAQ_Project/PREP/mcip/scripts diff run_mcip.csh run_mcip.csh.old 125,129c125 < # config_cmaq.csh modifies $CMAQ_HOME < set val = $CMAQ_HOME < source $CMAQ_HOME/config_cmaq.csh intel < set CMAQ_HOME = $val < echo $0": Solange 2 CMAQ_HOME: "$CMAQ_HOME --- > source $CMAQ_HOME/config_cmaq.csh 133c129 < set GridName = AMBA # 16-character maximum --- > set GridName = 2016_12SE1 # 16-character maximum 135,136c131,132 < set DataPath = /home/solange.luque/estudios/CMAQ-AMBA/prueba/DATA < set InMetDir = $DataPath/wrf --- > set DataPath = $CMAQ_DATA > set InMetDir = $DataPath/wrf 142,143d137 < < echo $0": Solange: "$ProgDir 163,164c157,159 < set InMetFiles = ( $InMetDir/wrfout_d03_2012-11-15_00:00:00 \ < $InMetDir/wrfout_d03_2012-11-15_12:00:00 ) --- > set InMetFiles = ( $InMetDir/subset_wrfout_d01_2016-07-01_00:00:00 \ > $InMetDir/subset_wrfout_d01_2016-07-02_00:00:00 \ > $InMetDir/subset_wrfout_d01_2016-07-03_00:00:00 ) 166,167c161,162 < set IfGeo = "T" < set InGeoFile = $InGeoDir/geo_em.d03.nc --- > set IfGeo = "F" > set InGeoFile = $InGeoDir/geo_em_d01.nc 194,195c189,190 < set MCIP_START = 2012-11-15-00:10:00.0000 # [UTC] < set MCIP_END = 2012-11-15-50:00:00.0000 # [UTC] --- > set MCIP_START = 2016-07-02-00:00:00.0000 # [UTC] > set MCIP_END = 2016-07-03-00:00:00.0000 # [UTC] 197c192 < set INTVL = 10 # [min] --- > set INTVL = 60 # [min] 221c216 < set BTRIM = 5 --- > set BTRIM = 0
Crear enlaces de los datos atmosféricos (los geo_em.d0[n].nc, ya están ahí):
ln -s /home/solange.luque/salidas/lluis.fita/estudios/ChemGBsAs/sims/weeks/20121110/control/wrfout_d03_* ./
Ejecutando:
source /opt/load-libs.sh 1 ./run_mcip.csh >& run_mcip.log
Se obtienen los archivos:
ls /home/solange.luque/estudios/CMAQ-AMBA/prueba/DATA/mcip/ GRIDBDY2D_160702.nc GRIDDESC LUFRAC_CRO_160702.nc METCRO2D_160702.nc METDOT3D_160702.nc SOI_CRO_160702.nc GRIDCRO2D_160702.nc GRIDDOT2D_160702.nc METBDY3D_160702.nc METCRO3D_160702.nc namelist.mcip
Inventarios
Inventarios de emisiones y prepararlos para CMAQ.
Seguimos los pasos de [[2]]
El directorio de trabajo en hydra es:
WORKDIR = /home/solange.luque/estudios/CMAQ-AMBA/prueba/DATA/emisiones
Generación GRIDDESC
Generación de los archivos ASCII de información de las proyecciones (GRIDDESC) en las cuáles se encuentran los distintos datos.
inventario
A partir de los datos ya regrillados en los archivos NOXtot.nc y VOCtot.nc. Se leen directamente los datos de los archivos y se rellena la información. En Inventarios_1k.griddesc:
! coords --line: name; type, P-alpha, P-beta, P-gamma, xcent, ycent 'AMBA_emis' 1, 0.0D0, 0.0D0, 0.0D0, 0.0D0, 0.0D0 ' ' ! end coords. grids: name; xorig, yorig, xcell, ycell, ncols, nrows, nthik 'AMBA_emis_cp' 'AMBA_emis' -58.99 -35.05 0.00899321605 0.00899321605 84 84 1 ' ' ! end grids
dominio
A partir de una salida de WRF y con el programa IOAPI wrfgriddesc se genera directamante el archivo GRIDDESC
Variables de entorno
setenv PROMPTFLAG no setenv WRFFILE /home/solange.luque/salidas/lluis.fita/estudios/ChemGBsAs/sims/weeks/20121110/control/wrfout_d03_2012-11-13_00:00:00 setenv OUTDESC /home/solange.luque/estudios/CMAQ-AMBA/prueba/DATA/ChemGBsAs_d03.griddesc setenv CRDNAME ChemGBsAs_d03 setenv CROGRID ChemGBsAs_d03_cpgrd setenv DOTGRID ChemGBsAs_d03_dotgrd setenv STXGRID ChemGBsAs_d03_xstag setenv STYGRID ChemGBsAs_d03_ystag
Ejecutando:
setenv ROOT_IOAPI /home/solange.luque/libraries/ioapi/v3.2-20200828/gnu/Linux2_x86_64/
${ROOT_IOAPI}/wrfgriddesc >& run_wrfgriddesc.log
El contenido de ChemGBsAs_d03.griddesc
! coords --line: name; type, P-alpha, P-beta, P-gamma, xcent, ycent
'ChemGBsAs_d03'
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_d03_cp'
'ChemGBsAs_d03' -6.9013191E+04 -6.3011015E+04 1.0000000E+03 1.0000000E+03 132 126 1
'ChemGBsAs_d03_do'
'ChemGBsAs_d03' -6.9513191E+04 -6.3511015E+04 1.0000000E+03 1.0000000E+03 133 127 1
'ChemGBsAs_d03_xs'
'ChemGBsAs_d03' -6.9513191E+04 -6.3011015E+04 1.0000000E+03 1.0000000E+03 133 126 1
'ChemGBsAs_d03_ys'
'ChemGBsAs_d03' -6.9013191E+04 -6.3511015E+04 1.0000000E+03 1.0000000E+03 132 127 1
' ' ! end grids
Especiación emisiones
Los archivos con las emisiones de VOC y NOx para AMBA, se tienen en valores totales. Se tienen que especificar (disgregar) para cada tipo de fuente de emisión.
Para ello se utiliza la script de python nc_to_m3fake.py del GITcimaCMAQ. Además de las tablas con las características de las múltiples fuentes de AMBA recopiladas en los archivos Estimacion_fi_para_el_AMBA_CMAQ.xlsx (estas tablas de características, así cómo también las fuentes ya regrilladas, son fruto de trabajos anteriores de Andrea Pineda Rojas, Laura E. Vengas Air Quality-Models and Applications, 2011, doi: 10.5772/18767)
python3 nc_to_m3fake.py NOXtot.nc NOx /home/solange.luque/estudios/CMAQ-AMBA/prueba/DATA/emisiones/ python3 nc_to_m3fake.py VOCtot.nc VOC /home/solange.luque/estudios/CMAQ-AMBA/prueba/DATA/emisiones/
De las scripts se generan los archivos que movemos a la nueva carpeta llamada contaminantes:
ls contaminantes/ ACET_AMBA ALD2_AMBA BENZENE_AMBA ETHA_AMBA ISPD_AMBA NO_AMBA OLE_AMBA TOLU_AMBA XYLMN_AMBA ACROLEIN_AMBA FORM_AMBA IOLE_AMBA NO2_AMBA PRPA_AMBA
Transformación netCDF a IOAPI
La generación de un archivo en formato IOAPI desde datos en ASCII se realiza con el programa m3fake. Dicho programa requiere la introducción de toda la información de cada fuente de emisión. A fin de agilizar este proceso, se ha creado la script de python m3fake/run_m3fake.py (disponible desde GITcimaCMAQ) que lee los distintos archivos de las emisiones (ver paso previo), y genera un archivo ASCII el cual se utiliza para correr el m3fake.
Ejecutando:
python3 /home/solange.luque/MODELOS/CMAQ/tools/cmaq/m3fake/run_m3fake.py /home/solange.luque/estudios/CMAQ-AMBA/prueba/DATA/emisiones/contaminantes /home/solange.luque/libraries/ioapi/v3.2-20200828/gnu/Linux2_x86_64/m3fake
El cuál genera el archivo:
args_m3fake.txt
Interpolación a dominio de simulación
C.I. y C.C. químicas
Condiciones de contorno e iniciales para la química atmosférica
Configuración CMAQ
Configurar CMAQ para determinar qué reacciones químicas, etc...
Simulado CMAQ
Simular CMAQ