CMAQ

De Wikicima
(Diferencias entre revisiones)
Saltar a: navegación, buscar
(CMAQ)
(CMAQ)
Línea 197: Línea 197:
 
mkdir BLD_CCTM_v54_gnu
 
mkdir BLD_CCTM_v54_gnu
 
cp -R /opt/openmpi/openmpi-4.1.2/gnu/10.2.1/include/* BLD_CCTM_v54_gnu/
 
cp -R /opt/openmpi/openmpi-4.1.2/gnu/10.2.1/include/* BLD_CCTM_v54_gnu/
./bldit_cctm.csh >& run_bldit_cctm.log
+
./bldit_cctm.csh gcc >& run_bldit_cctm.log
 
</pre>
 
</pre>
   

Revisión de 13:15 19 oct 2022

Instalando y usando CMAQ en hydra

Contenido

Instalando librerias

Instalación en /home/solange.luque/MODELOS/CMAQ/[comp].

Existe un foro: https://forum.cmascenter.org/t/ioapi-installtion-unable/805

ioapi

Agarrar librerías ioapi

Instalándolas en /home/solange.luque/libraries/

intel

mkdir -p ioapi/v3.2-20200828/intel
cd ioapi/v3.2-20200828/intel
tar xvfz ~/ioapi-3.2-20200828.tar.gz
mv ioapi-3.2-20200828/* ./
rmdir ioapi-3.2-20200828
export BIN=Linux2_x86_64ifort
mkdir Linux2_x86_64ifort
ln -s /opt/netcdf/netcdf-4/intel/2021.4.0/lib/*.so Linux2_x86_64ifort/
ln -s /opt/netcdf/netcdf-4/intel/2021.4.0/lib/libnetcdf.a Linux2_x86_64ifort/
ln -s /opt/netcdf/netcdf-4/intel/2021.4.0/lib/libnetcdff.a Linux2_x86_64ifort/
ln -s /opt/hdf5/hdf5-1.10.5/intel/2021.4.0/lib/libhdf5*a Linux2_x86_64ifort/
ln -s /opt/hdf5/hdf5-1.10.5/intel/2021.4.0/lib/libhdf5*so Linux2_x86_64ifort/
ln -s /usr/lib/x86_64-linux-gnu/*curl*a Linux2_x86_64ifort/
ln -s /usr/lib/x86_64-linux-gnu/*curl*so Linux2_x86_64ifort/
cp ioapi/Makefile.nocpl ioapi/Makefile
cp m3tools/Makefile.nocpl m3tools/Makefile
cp Makefile.template Makefile

Editamos los Makefiles (Makefile y ioapi/Makeinclude.Linux2_x86_64ifort)

 diff Makefile Makefile.template 
138,145c138,145
<  BIN        = Linux2_x86_64ifort
<  BASEDIR    = ${PWD}
<  INSTALL    = /home/solange.luque/MODELOS/CMAQ/intel/LIBRARIES/ioapi
<  LIBINST    = $(INSTALL)/$(BIN)
<  BININST    = $(INSTALL)/$(BIN)
<  CPLMODE    = nocpl
<  IOAPIDEFS  = 
<  PVMINCL    =
---
> # BIN        = Linux2_x86_64
> # BASEDIR    = ${PWD}
> # INSTALL    = ${HOME}
> # LIBINST    = $(INSTALL)/$(BIN)
> # BININST    = $(INSTALL)/$(BIN)
> # CPLMODE    = nocpl
> # IOAPIDEFS  = 
> # PVMINCL    =

Instalamos librerías

make configure >& run_configure.log
make all >& run_make.log
    • NOTA:** No compila pensamos por incompatibilidades entre librerías (eg. curl sólo está compilado con gnu)

gnu

mkdir -p ioapi/v3.2-20200828/gnu
cd ioapi/v3.2-20200828/gnu
tar xvfz ~/ioapi-3.2-20200828.tar.gz
mv ioapi-3.2-20200828/* ./
rmdir ioapi-3.2-20200828
export BIN=Linux2_x86_64
mkdir Linux2_x86_64
ln -s /opt/netcdf/netcdf-4/gnu/10.2.1/lib/*.so Linux2_x86_64/
ln -s /opt/netcdf/netcdf-4/gnu/10.2.1/lib/libnetcdf.a Linux2_x86_64/
ln -s /opt/netcdf/netcdf-4/gnu/10.2.1/lib/libnetcdff.a Linux2_x86_64/
ln -s /opt/hdf5/hdf5-1.10.5/gnu/10.2.1/lib/libhdf5*a Linux2_x86_64/
ln -s /opt/hdf5/hdf5-1.10.5/gnu/10.2.1/lib/libhdf5*so Linux2_x86_64/
ln -s /usr/lib/x86_64-linux-gnu/*curl*a Linux2_x86_64/
ln -s /usr/lib/x86_64-linux-gnu/*curl*so Linux2_x86_64/
cp ioapi/Makefile.nocpl ioapi/Makefile
cp m3tools/Makefile.nocpl m3tools/Makefile
cp Makefile.template Makefile

Editamos los Makefiles (Makefile y ioapi/Makeinclude.Linux2_x86_64ifort)

 diff Makefile Makefile.template 
138,145c138,145
<  BIN        = Linux2_x86_64
<  BASEDIR    = ${PWD}
<  INSTALL    = /home/solange.luque/MODELOS/CMAQ/gnu/LIBRARIES/ioapi
<  LIBINST    = $(INSTALL)/$(BIN)
<  BININST    = $(INSTALL)/$(BIN)
<  CPLMODE    = nocpl
<  IOAPIDEFS  = 
<  PVMINCL    =
---
> # BIN        = Linux2_x86_64
> # BASEDIR    = ${PWD}
> # INSTALL    = ${HOME}
> # LIBINST    = $(INSTALL)/$(BIN)
> # BININST    = $(INSTALL)/$(BIN)
> # CPLMODE    = nocpl
> # IOAPIDEFS  = 
> # PVMINCL    =

Instalamos librerías

make configure >& run_configure.log
make all >& run_make.log

Si no hay problemas

$ ls -l Linux2_x86_64/ | grep rwx | grep -v lrwxrwxrwx | awk '{print $9}' | tr '\n' ' ' 
airs2m3 bcwndw camxtom3 datshift dayagg factor findwndw greg2jul gregdate gridprobe insertgrid jul2greg juldate juldiff julshift kfxtract 
  latlon m3agmask m3agmax m3combo m3cple m3diff m3edhdr m3fake m3hdr m3interp m3mask m3merge m3pair m3probe m3stat m3totxt m3tproc m3tshift 
  m3wndw m3xtract mpasdiff mpasstat mpastom3 mtxblend mtxbuild mtxcalc mtxcple presterp presz projtool randomstat selmrg2d timediff timeshift 
  vertimeproc vertintegral vertot wndwdesc wrfgriddesc wrftom3

Instalando:

mkdir ~/MODELOS/CMAQ/gnu/LIBRARIES/ioapi
make install >& run_install.log
ls ~/MODELOS/CMAQ/gnu/LIBRARIES/ioapi/Linux2_x86_64/
airs2m3   greg2jul    julshift    m3cple    m3merge   m3utilio.mod    modpdata.mod  mtxcalc     timediff      wrftom3
bcwndw    gregdate    kfxtract    m3diff    m3pair    m3wndw          modwrfio.mod  mtxcple     timeshift
camxtom3  gridprobe   latlon      m3edhdr   m3probe   m3xtract        mpasdiff      presterp    vertimeproc
datshift  insertgrid  libioapi.a  m3fake    m3stat    modatts3.mod    mpasstat      presz       vertintegral
dayagg    jul2greg    m3agmask    m3hdr     m3totxt   modgctp.mod     mpastom3      projtool    vertot
factor    juldate     m3agmax     m3interp  m3tproc   modmpasfio.mod  mtxblend      randomstat  wndwdesc
findwndw  juldiff     m3combo     m3mask    m3tshift  modncfio.mod    mtxbuild      selmrg2d    wrfgriddesc
cp ioapi/fixed_src/* Linux2_x86_64/
cp ioapi/fixed_src/* /home/solange.luque/MODELOS/CMAQ/gnu/LIBRARIES/ioapi/Linux2_x86_64/

CMAQ

Yendo al directorio de trabajo

/home/solange.luque/MODELOS/CMAQ/gnu/
mkdir src
cd src
git clone https://github.com/USEPA/CMAQ.git CMAQ-master
head -n 1 ../../../README.md 
CMAQv5.4
cd CMAQ-master/
ls 
bldit_project.csh  CCTM  config_cmaq.csh  DOCS  license.md  POST  PREP  PYTOOLS  README.md  UTIL

Preparando configuración de la compilación

cp bldit_project.csh bldit_project.csh.old

diff bldit_project.csh bldit_project.csh.old 
19,20c19
<  #set CMAQ_HOME = ${PWD}/CMAQ_Project
<  set CMAQ_HOME = /home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project
---
>  set CMAQ_HOME = /home/username/path

Compilamos!

./bldit_project.csh >& run_bldit.log
tail run_bldit.log 
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/hr2day'
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/hr2day/scripts'
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/sitecmp'
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/sitecmp/scripts'
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/sitecmp_dailyo3'
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/sitecmp_dailyo3/scripts'
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/writesite'
mkdir: created directory '/home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project/POST/writesite/scripts'
Configuration and Run Scripts have been Extracted and placed in: /home/solange.luque/MODELOS/CMAQ/gnu/src/CMAQ-master/CMAQ_Project
You may now edit these scripts to conform to your system and run options.

Vamos al directorio

cd CMAQ_Project/
cp config_cmaq.csh config_cmaq.csh.old
./config_cmaq.csh gcc >& run_config-cmaq.log
cat run_config-cmaq.log
Compiler is set to gcc
0: Event not found.

Compilar el Chemistry Transport Model (CCTM):

cd CCTM/scripts/
mkdir BLD_CCTM_v54_gnu
cp -R /opt/openmpi/openmpi-4.1.2/gnu/10.2.1/include/* BLD_CCTM_v54_gnu/
./bldit_cctm.csh gcc >& run_bldit_cctm.log

Usando

Herramientas personales