Seguir lo que dice en el siguiente manual
-----------------------------------------
http://www.cmc.org.ve/mediawiki/index.php?title=%E2%97%A6_WRF
Para descargarse las librerías, hay una lista de esos datos a bajar
-------------------------------------------------------------------
http://www.mmm.ucar.edu/wrf/users/download/get_sources.html
Sistema operativo: GNU/Linux
Distribución: Scientific Linux
Versión: 6.1
------------------------------
------------------------------
1. Descargar software necesario
-------------------------------
Descarga de WRF y WPS desde la página oficial. Se ha instalado la versión 3.3.1
http://www.mmm.ucar.edu/wrf/src/
Datos de topografía
www.mmm.ucar.edu/wrf/src/wps_files/geog.tar.gz
Librerías adicionales necesarias
www.mmm.ucar.edu/wrf/src/wps_files/jasper-1.701.0.tar.gz
www.mmm.ucar.edu/wrf/src/wps_files/libpng-1.2.12.tar.gz
www.mmm.ucar.edu/wrf/src/wps_files/zlib-1.2.3.tar.gz
NetCDF (la librería más importante para WRF). La última versión (ahora es la versión 4.1.3).
http://www.unidata.ucar.edu/downloads/netcdf/index.jsp
WRFDomainWizard
http://wrfportal.org/domainwizard/WRFDomainWizard.zip
2. Instalación de compiladores y paquetes adicionales
-----------------------------------------------------
NOTA IMPORTANTE: Para todos los paquetes que se instalen y compilen en adelante, se debe utilizar las MISMAS VERSIONES de los compiladores.
---------------
# yum install gcc
# yum install gcc-gfortran
# yum install gcc-c++ (necesario para compilar NetCDF)
# yum install make
# yum install perl (en Scientific Linux ya está instalado por defecto)
# yum install java (necesario para correr WRFDomianWizard)
3. Instalación de librerías adicionales
---------------------------------------
Se recomienda instalar un editor llamado nano, para poder hacer cualquier creación o modificación de scripts en lo posterior mediante consola (terminal): # yum install nano.
ZLIB (Instalar con -fPIC: export CFLAGS=-fPIC antes de todo)
$ zlib-1.2.3.tar.gz
$ cd zlib-1.2.3
$ ./configure
$ make
$ make check
# make install
JASPER
$ tar -xvzf jasper-1.701.0.tar.gz
$ cd jasper-1.701.0
$ ./configure
$ make
$ make check
# make install
LIBPNG
$ tar -xvzf libpng-1.2.12.tar.gz
$ cd libpng-1.2.12
$ ./configure
$ make
ERROR: /usr/bin/ld: /usr/local/lib/libz.a(crc32.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libz.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
Posible solución: http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3
Si al momento de contruir (make) sale un error que pide que se recompile con -fPIC, se debe inicializar la variable CFLAGS = "-O3 -fPIC". Y luego de eso volver a ./configure. Así:
$ export CFLAGS="-O3 -fPIC"
$ ./configure
Se puede ver el contenido de una variable de la sigui./run_DomainWizard
ente manera:
$ echo $NOMBRE_VARIABLE
Se puede borrar el valor de una variable de la siguiente manera:
$ unset NOMBRE_VARIABLE
NO PUDE ARREGLAR EL ERROR. Se puede instalar con: # yum install libpng. En Scientific Linux 6.1 ya está instalada la versión 1.2.46-2
--------------------------
$ make check
# make install
4. Instalación NetCDF
---------------------
Se lo ha puesto como un subtítulo puesto que es la librería más importante para WRF.
$ tar -xvzf netcdf-4.1.3.tar.gz
$ cd netcdf-4.1.3
$ ./configure --disable-netcdf-4
$ make
$ make check
# make install
Para comprobar la instalación (se lo debe hacer pues es muy importante para WRF) se puede usar el siguiente comando:
ls /usr/local/include/netcdf*
El resultado debe contener los siguientes archivos:
/usr/local/include/netcdfcpp.h
/usr/local/include/netcdf.h
/usr/local/include/netcdf.hh
/usr/local/include/netcdf.inc
/usr/local/include/netcdf.mod
El siguiente comando:
ls /usr/local/lib/libnetcdf*
El resultado debe contener los siguientes archivos:
/usr/local/lib/libnetcdf.a
/usr/local/lib/libnetcdf_c++.la
/usr/local/lib/libnetcdf_c++.a
/usr/local/lib/libnetcdf.la
5. Instalación de WRF
---------------------
$ tar -xvzf WRFV3.3.1.TAR.gz
$ cd WRFV3
Necesitaremos ahora agregar unas nuevas líneas al /etc/bashrc. Son las que se ven a continuación:
$ export JASPERLIB=/opt/jasper-1.701.0
$ export JASPERINC=/opt/jasper-1.701.0
$ ulimit -s unlimited
Para actualizar las variables de ambiente, como es usual:
$ source /etc/bashrc
$ ./configure
Aparece lo siguiente:
checking for perl5... no
checking for perl... found /usr/bin/perl (perl)
** WARNING: No path to NETCDF and environment variable NETCDF not set.
** would you like me to try to fix? [y]
decimos "y" e incluimos los PATH:
/usr/local/include
/usr/local/lib
en cada uno de los casos que pregunta. Si hemos hecho todo bien aparecerá un menú (al principio de todo indica que se han reconocido los caminos a la biblioteca JASPER):
Please select from among the following supported platforms.
1. Linux x86_64, PGI compiler with gcc (serial)
2. Linux x86_64, PGI compiler with gcc (smpar)
3. Linux x86_64, PGI compiler with gcc (dmpar)
4. Linux x86_64, PGI compiler with gcc (dm+sm)
5. Linux x86_64, PGI accelerator compiler with gcc (serial)
6. Linux x86_64, PGI accelerator compiler with gcc (smpar)
7. Linux x86_64, PGI accelerator compiler with gcc (dmpar)
8. Linux x86_64, PGI accelerator compiler with gcc (dm+sm)
9. Linux x86_64 i486 i586 i686, ifort compiler with icc (serial)
10. Linux x86_64 i486 i586 i686, ifort compiler with icc (smpar)
11. Linux x86_64 i486 i586 i686, ifort compiler with icc (dmpar)
12. Linux x86_64 i486 i586 i686, ifort compiler with icc (dm+sm)
13. Linux i486 i586 i686 x86_64, PathScale compiler with pathcc (serial)
14. Linux i486 i586 i686 x86_64, PathScale compiler with pathcc (dmpar)
15. x86_64 Linux, gfortran compiler with gcc (serial)
16. x86_64 Linux, gfortran compiler with gcc (smpar)
17. x86_64 Linux, gfortran compiler with gcc (dmpar)
18. x86_64 Linux, gfortran compiler with gcc (dm+sm)
19. Cray XT CLE/Linux x86_64, PGI compiler with gcc (seri./run_DomainWizard
al)
20. Cray XT CLE/Linux x86_64, PGI compiler with gcc (smpar)
21. Cray XT CLE/Linux x86_64, PGI compiler with gcc (dmpar)
22. Cray XT CLE/Linux x86_64, PGI compiler with gcc (dm+sm)
23. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (serial)
24. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (smpar)
25. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (dmpar)
26. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (dm+sm)
Enter selection [1-26] : 15
Compile for nesting? (0=no nesting, 1=basic, 2=preset moves, 3=vortex following) [default 0]: 1
Configuration successful. To build the model type compile .
Testing for NetCDF, C and Fortran compiler
no entry nc.o in archive
This installation NetCDF is
C compiler is 64-bit
Fortran compiler is 64-bit
It will build in
¡YA!
----
$ ./compile em_real
Y SE COMIENZA A COMPILAR
------------------------
Para comprobar que se haya realizado con éxito la compilación. Se deben encontrar en el directorio main (dentro de WRFV3), entre otros, los siguientes archivos:
$ ls run/*.exe
wrf.exe
real.exe
nup.exe
ndown.exe
tc.exe
ndown.exe
Para hacer una prueba se puede bajar el siguiente archivo empaquetado: http://www.mmm.ucar.edu/wrf/src/data/jan00_wps.tar.gz
Se lo pone dentro de test/em_real
$ cd test/em_real
$ tar -xvzf jan00_wps.tar.gz
$ cp namelist.input.jan00 namelist.input
$ ./real.exe
Puede salir el siguiente error: ./real.exe: error while loading shared libraries: libnetcdff.so.5: cannot open shared object file: No such file or directory
Solución: $ export LD_LIBRARY_PATH=/usr/local/lib
Para recompilar
$ ./clean -a
$ ./configure
$ ./compile
INSTALACIÓN WPS
---------------
$ tar -xvzf WPSV3.3.1.TAR.gz
$ cd WPS/
$ export JASPERLIB=/opt/jasper-1.701.0
$ export JASPERINC=/opt/jasper-1.701.0
NOTA: Aquí se muestra cómo hacer para que se configure WPS con grib2: https://nesccdocs.rdhpcs.noaa.gov/wiki/index.php/WPS
Básicamente se tiene que poner en configure.wps
COMPRESSION_LIBS = -ljasper -lpng12 -lpng -lz
$ ./configure
** WARNING: No path to NETCDF and environment variable NETCDF not set.
** would you like me to try to fix? [y]
y
Enter full path to NetCDF include directory on your system
/usr/local/include
Enter full path to NetCDF library directory on your system
/usr/local/lib
created new ./netcdf_links directory
total 0
lrwxrwxrwx. 1 angelv angelv 18 mar 5 16:31 include -> /usr/local/include/
lrwxrwxrwx. 1 angelv angelv 14 mar 5 16:31 lib -> /usr/local/lib/
Will use NETCDF in dir: /home/angelv/WPS/netcdf_links
$JASPERLIB or $JASPERINC not found in environment, configuring to build with grib2 I/O...
------------------------------------------------------------------------
Please select from among the following supported platforms.
1. PC Linux x86_64, Intel compiler serial, NO GRIB2
2. PC Linux x86_64, Intel compiler serial
3. PC Linux x86_64, Intel compiler DM parallel, NO GRIB2
4. PC Linux x86_64, Intel compiler DM parallel
5. PC Linux x86_64, gfortran compiler, serial, NO GRIB2
6. PC Linux x86_64, gfortran compiler, serial
7. PC Linux x86_64, gfortran compiler, DM PARALLEL, NO GRIB2
8. PC Linux x86_64, gfortran compiler, DM PARALLEL
9. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, serial, NO GRIB2
10. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, serial
11. Cray XT/XE Linux x86_64 (Opteron), PGI compiler 5.2 or higher, DM parallel
12. Cray XT/XE Linux x86_64 (Opteron), PGI compiler 5.2 or higher, DM parallel, NO GRIB2
13. Cray XT/XE Linux x86_64 (Opteron), Cray CCE compiler 7.0 or higher, DM parallel
14. Cray XT/XE Linux x86_64 (Opteron), Cray CCE compiler 7.0 or higher, DM parallel, NO GRIB2
15. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, DM parallel, NO GRIB2
16. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, DM parallel
17. PC Linux x86_64 (IA64 and Opteron), PathScale compiler 2.1 or higher, serial, NO GRIB2
18. PC Linux x86_64 (IA64 and Opteron), PathScale compiler 2.1 or higher, DM parallel, NO GRIB2
19. PC Linux x86_64, g95 compiler, serial, NO GRIB2
20. PC Linux x86_64, g95 compiler, serial
21. PC Linux x86_64, g95 compiler, DM PARALLEL, NO GRIB2
22. PC Linux x86_64, g95 compiler, DM PARALLEL
Enter selection [1-22] : 8
------------------------------------------------------------------------
Configuration successful. To build the WPS, type: compile
------------------------------------------------------------------------
$ ./compile
**********************************************************************************************************************
************************************** WRFDomainWizard *************************************************************
**********************************************************************************************************************
WRFDomainWizard
---------------
---------------
Descompresión del programa. Se lo ha realizado dentro de la carpeta personal /home/angelv/WRFDomainWizard
$ unzip WRFDomainWizard.zip (este comando descomprime los archivos donde esté WRFDomainWizard.zip)
Cambiamos los permisos de ejecución del lanzador del programa (http://belinuxmyfriend.blogspot.com/2007/04/chmod-jugando-con-los-permisos.html):
$ chmod 777 run_DomainWizard
$ ./run_DomainWizard
Datos no transitorios
---------------------
Descargar datos geográficos (454 MB) de: http://www.mmm.ucar.edu/wrf/src/wps_files/geog.tar.gz
Descomprimir los datos geográficos (13 GB). Se lo puede hacer en cualquier directorio; en este caso se lo ha descomprimido en el directorio donde está WPS (/home/angelv/WPS).
$ tar -xvzf geog.tar.gz
Uso de WRFDomainWizard
----------------------
NOTA: Por facilidad (para no usar línea de comandos) se ha creado un lanzador o acceso directo a WRFDomainWizard para acceder desde el escritorio.
Click derecho en el Escritorio
Crear Lanzador
Se ingresan los siguientes datos
Tipo: Aplicación
Nombre: WRFDomainWizard (Este nombre puede ser cualquiera)
Comando: java -Xmx575m -jar /home/angelv/WRFDomainWizard/WRFDomainWizard.jar
Comentario: GUI para uso de WPS (Puede ser cualquier comentario)
Primero se configuran los parámetros de WRFDomainWizard
NOTA: Se crea un directorio para los resultados de ejecución de WPS (para usarlo en el parámetro Domains al momento de configurar WRFDomainWizard): $ mkdir /home/angelv/WPS/Domains
Computer (se rellena automáticamente luego de ingresar los siguientes tres parámetros): localhost.localdomain
WPS Programs: /home/angelv/WPS
Geography: /home/angelv/WPS/geog
Domains: /home/angelv/WPS/Domains
NOTA: Para ver el uso de WRFDomainWizard: http://wrfportal.org/DomainWizard.html
Para instalar Skype en Scientific Linux: http://unix.stackexchange.com/questions/25846/skype-missing-gpg-key
PRUEBA DE EJECUCIÓN CON WRF
---------------------------
$ ./real.exe
Salió este error:
-------------- FATAL CALLED ---------------
FATAL CALLED FROM FILE: LINE: 693
input_wrf.F: SIZE MISMATCH: namelist ide,jde,num_metgrid_levels= 100 132 65 ; input data ide,jde,num_metgrid_levels= 100 132 27
Aquí tuve pistas para resolver el problema: http://forum.wrfforum.com/viewtopic.php?f=9&t=2781
El error dice que no hay consistencia entre el valor configurado en la variable num_metgrid_levels y los valores que existen para hacer la corrida. Hay que editar el valor de la variable, cambiando de 65 a 27 (como se indica en el archivo mismo).
Luego de una ejecución exitosa debe aparecer el siguiente resultado:
Domain 1: Current date being processed: 2012-03-30_00:00:00.0000, which is loop # 9 out of 9
configflags%julyr, %julday, %gmt: 2012 90 0.0000000
metgrid input_wrf.F first_date_input = 2012-03-30_00:00:00
metgrid input_wrf.F first_date_nml = 2012-03-29_00:00:00
d01 2012-03-30_00:00:00 Timing for input 0 s.
d01 2012-03-30_00:00:00 flag_soil_layers read from met_em file is 1
Using sfcprs3 to compute psfc
d01 2012-03-30_00:00:00 Old data, no inland lake information
Assume Noah LSM input
LAND CHANGE = 0
WATER CHANGE = 0
d01 2012-03-30_00:00:00 Timing for processing 0 s.
LBC valid between these times 2012-03-29_21:00:00.0000 2012-03-30_00:00:00
d01 2012-03-30_00:00:00 Timing for output 0 s.
d01 2012-03-30_00:00:00 Timing for loop # 9 = 1 s.
d01 2012-03-30_00:00:00 real_em: SUCCESS COMPLETE REAL_EM INIT
$ ./wrf.exe
Timing for Writing wrfout_d01_2012-03-29_03:00:00 for domain 1: 0.30800 elapsed seconds.
d01 2012-03-29_03:00:00 wrf: SUCCESS COMPLETE WRF
ERROR ERROR ERROR
-----------------
-----------------
Por aquí puede estar la solución: http://forum.wrfforum.com/viewtopic.php?f=6&t=2531
[angelv@localhost em_real]$ ./wrf.exe
Namelist dfi_control not found in namelist.input. Using registry defaults for variables in dfi_control
Namelist tc not found in namelist.input. Using registry defaults for variables in tc
Namelist scm not found in namelist.input. Using registry defaults for variables in scm
Namelist fire not found in namelist.input. Using registry defaults for variables in fire
--- NOTE: sst_update is 0, setting io_form_auxinput4 = 0 and auxinput4_interval = 0 for all domains
--- NOTE: grid_fdda is 0 for domain 1, setting gfdda interval and ending time to 0 for that domain.
--- NOTE: both grid_sfdda and pxlsm_soil_nudge are 0 for domain 1, setting sgfdda interval and ending time to 0 for that domain.
--- NOTE: obs_nudge_opt is 0 for domain 1, setting obs nudging interval and ending time to 0 for that domain.
--- NOTE: num_soil_layers has been set to 4
WRF V3.3.1 MODEL
*************************************
Parent domain
ids,ide,jds,jde 1 100 1 132
ims,ime,jms,jme -4 105 -4 137
ips,ipe,jps,jpe 1 100 1 132
*************************************
DYNAMICS OPTION: Eulerian Mass Coordinate
alloc_space_field: domain 1 , 596733464 bytes allocated
med_initialdata_input: calling input_input
Timing for processing wrfinput file (stream 0) for domain 1: 0.17400 elapsed seconds.
INPUT LandUse = "USGS"
LANDUSE TYPE = "USGS" FOUND 33 CATEGORIES 2 SEASONS WATER CATEGORY = 16 SNOW CATEGORY = 24
INITIALIZE THREE Noah LSM RELATED TABLES
LANDUSE TYPE = USGS FOUND 27 CATEGORIES
INPUT SOIL TEXTURE CLASSIFICATION = STAS
SOIL TEXTURE CLASSIFICATION = STAS FOUND 19 CATEGORIES
Timing for Writing wrfout_d01_2012-03-29_00:00:00 for domain 1: 0.86100 elapsed seconds.
Timing for processing lateral boundary for domain 1: 0.04900 elapsed seconds.
WRF TILE 1 IS 1 IE 100 JS 1 JE 132
WRF NUMBER OF TILES = 1
Timing for main: time 2012-03-29_00:03:00 on domain 1: 25.85200 elapsed seconds.
Timing for main: time 2012-03-29_00:06:00 on domain 1: 15.83300 elapsed seconds.
Timing for main: time 2012-03-29_00:09:00 on domain 1: 15.50600 elapsed seconds.
Timing for main: time 2012-03-29_00:12:00 on domain 1: 16.01300 elapsed seconds.
Timing for main: time 2012-03-29_00:15:00 on domain 1: 15.59900 elapsed seconds.
Timing for main: time 2012-03-29_00:18:00 on domain 1: 16.03300 elapsed seconds.
Flerchinger USEd in NEW version. Iterations= 10
Flerchinger USEd in NEW version. Iterations= 10
Flerchinger USEd in NEW version. Iterations= 10
WOULD GO OFF TOP: KF_ETA_PARA I,J,DPTHMX,DPMIN 52 89 NaN 5000.0000
Violación de segmento
--------------------
--------------------
ERROR ERROR ERROR
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
***************************** INSTALACIÓN DE ARW POST *******************************************************************************
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
VIDEO QUE DA CÓMO COMPILAR http://youtu.be/zXvfQ4i0IJE
ARWpost:
ARWpost, is a Fortran program that reads WRF ARW input and output file and generate GrADS output files.
Once the output files have been generated, GrADS can be used to producing horizontal or vertical cross section plots of scalar fields (contours) or vector fields (barbs or arrows), vertical profiles and soundings.
$ tar -xvzf ARWpost_V3.tar.gz
$ cd ARWpost
$ ./configure
** WARNING: No path to NETCDF and environment variable NETCDF not set.
** would you like me to try to fix? [y]
y
Enter full path to NetCDF include directory on your system
/usr/local/include
Enter full path to NetCDF library directory on your system
/usr/local/lib
created new ./netcdf_links directory
total 0
lrwxrwxrwx. 1 angelv angelv 18 abr 18 15:41 include -> /usr/local/include/
lrwxrwxrwx. 1 angelv angelv 14 abr 18 15:41 lib -> /usr/local/lib/
Will use NETCDF in dir: /home/angelv/ARWpost/netcdf_links
------------------------------------------------------------------------
Please select from among the following supported platforms.
1. PC Linux i486 i586 i686 x86_64, PGI compiler
2. PC Linux i486 i586 i686 x86_64, Intel compiler
3. PC Linux i486 i586 i686 x86_64, gfortran compiler
Enter selection [1-3] : 2
------------------------------------------------------------------------
Configuration successful. To build the ARWpost, type: compile
------------------------------------------------------------------------
$ ./compile
Se dió el siguiente error:
module_interp.f:(.text+0x6ece): undefined reference to `ncvgt_'
collect2: ld devolvió el estado de salida 1
make: [ARWpost.exe] Error 1 (no tiene efecto)
Instalación de Vis5D
Descargar desde la página web oficial: http://www.ssec.wisc.edu/~billh/vis5d.html
$ tar -xvzf vis5d+-1.3.0-beta.tar.gz
$ cd vis5d+-1.3.0-beta
$ ./configure
****************************************************
You need to install a 3D graphics library, preferably
the free OpenGL replacement, Mesa. You can download
Mesa from the Mesa home page:
http://www.mesa3d.org/
and install it by running:
./configure && make && su -c 'make install'
in the Mesa directory.
You may also need to run /sbin/ldconfig as root
to update the system after installing Mesa.
(First, add '/usr/local/lib' to /etc/ld.so.conf if
you installed Mesa under /usr/local, the default.)
****************************************************
-----------------------------------------
http://www.cmc.org.ve/mediawiki/index.php?title=%E2%97%A6_WRF
Para descargarse las librerías, hay una lista de esos datos a bajar
-------------------------------------------------------------------
http://www.mmm.ucar.edu/wrf/users/download/get_sources.html
Sistema operativo: GNU/Linux
Distribución: Scientific Linux
Versión: 6.1
------------------------------
------------------------------
1. Descargar software necesario
-------------------------------
Descarga de WRF y WPS desde la página oficial. Se ha instalado la versión 3.3.1
http://www.mmm.ucar.edu/wrf/src/
Datos de topografía
www.mmm.ucar.edu/wrf/src/wps_files/geog.tar.gz
Librerías adicionales necesarias
www.mmm.ucar.edu/wrf/src/wps_files/jasper-1.701.0.tar.gz
www.mmm.ucar.edu/wrf/src/wps_files/libpng-1.2.12.tar.gz
www.mmm.ucar.edu/wrf/src/wps_files/zlib-1.2.3.tar.gz
NetCDF (la librería más importante para WRF). La última versión (ahora es la versión 4.1.3).
http://www.unidata.ucar.edu/downloads/netcdf/index.jsp
WRFDomainWizard
http://wrfportal.org/domainwizard/WRFDomainWizard.zip
2. Instalación de compiladores y paquetes adicionales
-----------------------------------------------------
NOTA IMPORTANTE: Para todos los paquetes que se instalen y compilen en adelante, se debe utilizar las MISMAS VERSIONES de los compiladores.
---------------
# yum install gcc
# yum install gcc-gfortran
# yum install gcc-c++ (necesario para compilar NetCDF)
# yum install make
# yum install perl (en Scientific Linux ya está instalado por defecto)
# yum install java (necesario para correr WRFDomianWizard)
3. Instalación de librerías adicionales
---------------------------------------
Se recomienda instalar un editor llamado nano, para poder hacer cualquier creación o modificación de scripts en lo posterior mediante consola (terminal): # yum install nano.
ZLIB (Instalar con -fPIC: export CFLAGS=-fPIC antes de todo)
$ zlib-1.2.3.tar.gz
$ cd zlib-1.2.3
$ ./configure
$ make
$ make check
# make install
JASPER
$ tar -xvzf jasper-1.701.0.tar.gz
$ cd jasper-1.701.0
$ ./configure
$ make
$ make check
# make install
LIBPNG
$ tar -xvzf libpng-1.2.12.tar.gz
$ cd libpng-1.2.12
$ ./configure
$ make
ERROR: /usr/bin/ld: /usr/local/lib/libz.a(crc32.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libz.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
Posible solución: http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3
Si al momento de contruir (make) sale un error que pide que se recompile con -fPIC, se debe inicializar la variable CFLAGS = "-O3 -fPIC". Y luego de eso volver a ./configure. Así:
$ export CFLAGS="-O3 -fPIC"
$ ./configure
Se puede ver el contenido de una variable de la sigui./run_DomainWizard
ente manera:
$ echo $NOMBRE_VARIABLE
Se puede borrar el valor de una variable de la siguiente manera:
$ unset NOMBRE_VARIABLE
NO PUDE ARREGLAR EL ERROR. Se puede instalar con: # yum install libpng. En Scientific Linux 6.1 ya está instalada la versión 1.2.46-2
--------------------------
$ make check
# make install
4. Instalación NetCDF
---------------------
Se lo ha puesto como un subtítulo puesto que es la librería más importante para WRF.
$ tar -xvzf netcdf-4.1.3.tar.gz
$ cd netcdf-4.1.3
$ ./configure --disable-netcdf-4
$ make
$ make check
# make install
Para comprobar la instalación (se lo debe hacer pues es muy importante para WRF) se puede usar el siguiente comando:
ls /usr/local/include/netcdf*
El resultado debe contener los siguientes archivos:
/usr/local/include/netcdfcpp.h
/usr/local/include/netcdf.h
/usr/local/include/netcdf.hh
/usr/local/include/netcdf.inc
/usr/local/include/netcdf.mod
El siguiente comando:
ls /usr/local/lib/libnetcdf*
El resultado debe contener los siguientes archivos:
/usr/local/lib/libnetcdf.a
/usr/local/lib/libnetcdf_c++.la
/usr/local/lib/libnetcdf_c++.a
/usr/local/lib/libnetcdf.la
5. Instalación de WRF
---------------------
$ tar -xvzf WRFV3.3.1.TAR.gz
$ cd WRFV3
Necesitaremos ahora agregar unas nuevas líneas al /etc/bashrc. Son las que se ven a continuación:
$ export JASPERLIB=/opt/jasper-1.701.0
$ export JASPERINC=/opt/jasper-1.701.0
$ ulimit -s unlimited
Para actualizar las variables de ambiente, como es usual:
$ source /etc/bashrc
$ ./configure
Aparece lo siguiente:
checking for perl5... no
checking for perl... found /usr/bin/perl (perl)
** WARNING: No path to NETCDF and environment variable NETCDF not set.
** would you like me to try to fix? [y]
decimos "y" e incluimos los PATH:
/usr/local/include
/usr/local/lib
en cada uno de los casos que pregunta. Si hemos hecho todo bien aparecerá un menú (al principio de todo indica que se han reconocido los caminos a la biblioteca JASPER):
Please select from among the following supported platforms.
1. Linux x86_64, PGI compiler with gcc (serial)
2. Linux x86_64, PGI compiler with gcc (smpar)
3. Linux x86_64, PGI compiler with gcc (dmpar)
4. Linux x86_64, PGI compiler with gcc (dm+sm)
5. Linux x86_64, PGI accelerator compiler with gcc (serial)
6. Linux x86_64, PGI accelerator compiler with gcc (smpar)
7. Linux x86_64, PGI accelerator compiler with gcc (dmpar)
8. Linux x86_64, PGI accelerator compiler with gcc (dm+sm)
9. Linux x86_64 i486 i586 i686, ifort compiler with icc (serial)
10. Linux x86_64 i486 i586 i686, ifort compiler with icc (smpar)
11. Linux x86_64 i486 i586 i686, ifort compiler with icc (dmpar)
12. Linux x86_64 i486 i586 i686, ifort compiler with icc (dm+sm)
13. Linux i486 i586 i686 x86_64, PathScale compiler with pathcc (serial)
14. Linux i486 i586 i686 x86_64, PathScale compiler with pathcc (dmpar)
15. x86_64 Linux, gfortran compiler with gcc (serial)
16. x86_64 Linux, gfortran compiler with gcc (smpar)
17. x86_64 Linux, gfortran compiler with gcc (dmpar)
18. x86_64 Linux, gfortran compiler with gcc (dm+sm)
19. Cray XT CLE/Linux x86_64, PGI compiler with gcc (seri./run_DomainWizard
al)
20. Cray XT CLE/Linux x86_64, PGI compiler with gcc (smpar)
21. Cray XT CLE/Linux x86_64, PGI compiler with gcc (dmpar)
22. Cray XT CLE/Linux x86_64, PGI compiler with gcc (dm+sm)
23. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (serial)
24. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (smpar)
25. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (dmpar)
26. Cray XT CLE/Linux x86_64, Cray CCE compiler with gcc (dm+sm)
Enter selection [1-26] : 15
Compile for nesting? (0=no nesting, 1=basic, 2=preset moves, 3=vortex following) [default 0]: 1
Configuration successful. To build the model type compile .
Testing for NetCDF, C and Fortran compiler
no entry nc.o in archive
This installation NetCDF is
C compiler is 64-bit
Fortran compiler is 64-bit
It will build in
¡YA!
----
$ ./compile em_real
Y SE COMIENZA A COMPILAR
------------------------
Para comprobar que se haya realizado con éxito la compilación. Se deben encontrar en el directorio main (dentro de WRFV3), entre otros, los siguientes archivos:
$ ls run/*.exe
wrf.exe
real.exe
nup.exe
ndown.exe
tc.exe
ndown.exe
Para hacer una prueba se puede bajar el siguiente archivo empaquetado: http://www.mmm.ucar.edu/wrf/src/data/jan00_wps.tar.gz
Se lo pone dentro de test/em_real
$ cd test/em_real
$ tar -xvzf jan00_wps.tar.gz
$ cp namelist.input.jan00 namelist.input
$ ./real.exe
Puede salir el siguiente error: ./real.exe: error while loading shared libraries: libnetcdff.so.5: cannot open shared object file: No such file or directory
Solución: $ export LD_LIBRARY_PATH=/usr/local/lib
Para recompilar
$ ./clean -a
$ ./configure
$ ./compile
INSTALACIÓN WPS
---------------
$ tar -xvzf WPSV3.3.1.TAR.gz
$ cd WPS/
$ export JASPERLIB=/opt/jasper-1.701.0
$ export JASPERINC=/opt/jasper-1.701.0
NOTA: Aquí se muestra cómo hacer para que se configure WPS con grib2: https://nesccdocs.rdhpcs.noaa.gov/wiki/index.php/WPS
Básicamente se tiene que poner en configure.wps
COMPRESSION_LIBS = -ljasper -lpng12 -lpng -lz
$ ./configure
** WARNING: No path to NETCDF and environment variable NETCDF not set.
** would you like me to try to fix? [y]
y
Enter full path to NetCDF include directory on your system
/usr/local/include
Enter full path to NetCDF library directory on your system
/usr/local/lib
created new ./netcdf_links directory
total 0
lrwxrwxrwx. 1 angelv angelv 18 mar 5 16:31 include -> /usr/local/include/
lrwxrwxrwx. 1 angelv angelv 14 mar 5 16:31 lib -> /usr/local/lib/
Will use NETCDF in dir: /home/angelv/WPS/netcdf_links
$JASPERLIB or $JASPERINC not found in environment, configuring to build with grib2 I/O...
------------------------------------------------------------------------
Please select from among the following supported platforms.
1. PC Linux x86_64, Intel compiler serial, NO GRIB2
2. PC Linux x86_64, Intel compiler serial
3. PC Linux x86_64, Intel compiler DM parallel, NO GRIB2
4. PC Linux x86_64, Intel compiler DM parallel
5. PC Linux x86_64, gfortran compiler, serial, NO GRIB2
6. PC Linux x86_64, gfortran compiler, serial
7. PC Linux x86_64, gfortran compiler, DM PARALLEL, NO GRIB2
8. PC Linux x86_64, gfortran compiler, DM PARALLEL
9. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, serial, NO GRIB2
10. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, serial
11. Cray XT/XE Linux x86_64 (Opteron), PGI compiler 5.2 or higher, DM parallel
12. Cray XT/XE Linux x86_64 (Opteron), PGI compiler 5.2 or higher, DM parallel, NO GRIB2
13. Cray XT/XE Linux x86_64 (Opteron), Cray CCE compiler 7.0 or higher, DM parallel
14. Cray XT/XE Linux x86_64 (Opteron), Cray CCE compiler 7.0 or higher, DM parallel, NO GRIB2
15. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, DM parallel, NO GRIB2
16. PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher, DM parallel
17. PC Linux x86_64 (IA64 and Opteron), PathScale compiler 2.1 or higher, serial, NO GRIB2
18. PC Linux x86_64 (IA64 and Opteron), PathScale compiler 2.1 or higher, DM parallel, NO GRIB2
19. PC Linux x86_64, g95 compiler, serial, NO GRIB2
20. PC Linux x86_64, g95 compiler, serial
21. PC Linux x86_64, g95 compiler, DM PARALLEL, NO GRIB2
22. PC Linux x86_64, g95 compiler, DM PARALLEL
Enter selection [1-22] : 8
------------------------------------------------------------------------
Configuration successful. To build the WPS, type: compile
------------------------------------------------------------------------
$ ./compile
**********************************************************************************************************************
************************************** WRFDomainWizard *************************************************************
**********************************************************************************************************************
WRFDomainWizard
---------------
---------------
Descompresión del programa. Se lo ha realizado dentro de la carpeta personal /home/angelv/WRFDomainWizard
$ unzip WRFDomainWizard.zip (este comando descomprime los archivos donde esté WRFDomainWizard.zip)
Cambiamos los permisos de ejecución del lanzador del programa (http://belinuxmyfriend.blogspot.com/2007/04/chmod-jugando-con-los-permisos.html):
$ chmod 777 run_DomainWizard
$ ./run_DomainWizard
Datos no transitorios
---------------------
Descargar datos geográficos (454 MB) de: http://www.mmm.ucar.edu/wrf/src/wps_files/geog.tar.gz
Descomprimir los datos geográficos (13 GB). Se lo puede hacer en cualquier directorio; en este caso se lo ha descomprimido en el directorio donde está WPS (/home/angelv/WPS).
$ tar -xvzf geog.tar.gz
Uso de WRFDomainWizard
----------------------
NOTA: Por facilidad (para no usar línea de comandos) se ha creado un lanzador o acceso directo a WRFDomainWizard para acceder desde el escritorio.
Click derecho en el Escritorio
Crear Lanzador
Se ingresan los siguientes datos
Tipo: Aplicación
Nombre: WRFDomainWizard (Este nombre puede ser cualquiera)
Comando: java -Xmx575m -jar /home/angelv/WRFDomainWizard/WRFDomainWizard.jar
Comentario: GUI para uso de WPS (Puede ser cualquier comentario)
Primero se configuran los parámetros de WRFDomainWizard
NOTA: Se crea un directorio para los resultados de ejecución de WPS (para usarlo en el parámetro Domains al momento de configurar WRFDomainWizard): $ mkdir /home/angelv/WPS/Domains
Computer (se rellena automáticamente luego de ingresar los siguientes tres parámetros): localhost.localdomain
WPS Programs: /home/angelv/WPS
Geography: /home/angelv/WPS/geog
Domains: /home/angelv/WPS/Domains
NOTA: Para ver el uso de WRFDomainWizard: http://wrfportal.org/DomainWizard.html
Para instalar Skype en Scientific Linux: http://unix.stackexchange.com/questions/25846/skype-missing-gpg-key
PRUEBA DE EJECUCIÓN CON WRF
---------------------------
$ ./real.exe
Salió este error:
-------------- FATAL CALLED ---------------
FATAL CALLED FROM FILE:
input_wrf.F: SIZE MISMATCH: namelist ide,jde,num_metgrid_levels= 100 132 65 ; input data ide,jde,num_metgrid_levels= 100 132 27
Aquí tuve pistas para resolver el problema: http://forum.wrfforum.com/viewtopic.php?f=9&t=2781
El error dice que no hay consistencia entre el valor configurado en la variable num_metgrid_levels y los valores que existen para hacer la corrida. Hay que editar el valor de la variable, cambiando de 65 a 27 (como se indica en el archivo mismo).
Luego de una ejecución exitosa debe aparecer el siguiente resultado:
Domain 1: Current date being processed: 2012-03-30_00:00:00.0000, which is loop # 9 out of 9
configflags%julyr, %julday, %gmt: 2012 90 0.0000000
metgrid input_wrf.F first_date_input = 2012-03-30_00:00:00
metgrid input_wrf.F first_date_nml = 2012-03-29_00:00:00
d01 2012-03-30_00:00:00 Timing for input 0 s.
d01 2012-03-30_00:00:00 flag_soil_layers read from met_em file is 1
Using sfcprs3 to compute psfc
d01 2012-03-30_00:00:00 Old data, no inland lake information
Assume Noah LSM input
LAND CHANGE = 0
WATER CHANGE = 0
d01 2012-03-30_00:00:00 Timing for processing 0 s.
LBC valid between these times 2012-03-29_21:00:00.0000 2012-03-30_00:00:00
d01 2012-03-30_00:00:00 Timing for output 0 s.
d01 2012-03-30_00:00:00 Timing for loop # 9 = 1 s.
d01 2012-03-30_00:00:00 real_em: SUCCESS COMPLETE REAL_EM INIT
$ ./wrf.exe
Timing for Writing wrfout_d01_2012-03-29_03:00:00 for domain 1: 0.30800 elapsed seconds.
d01 2012-03-29_03:00:00 wrf: SUCCESS COMPLETE WRF
ERROR ERROR ERROR
-----------------
-----------------
Por aquí puede estar la solución: http://forum.wrfforum.com/viewtopic.php?f=6&t=2531
[angelv@localhost em_real]$ ./wrf.exe
Namelist dfi_control not found in namelist.input. Using registry defaults for variables in dfi_control
Namelist tc not found in namelist.input. Using registry defaults for variables in tc
Namelist scm not found in namelist.input. Using registry defaults for variables in scm
Namelist fire not found in namelist.input. Using registry defaults for variables in fire
--- NOTE: sst_update is 0, setting io_form_auxinput4 = 0 and auxinput4_interval = 0 for all domains
--- NOTE: grid_fdda is 0 for domain 1, setting gfdda interval and ending time to 0 for that domain.
--- NOTE: both grid_sfdda and pxlsm_soil_nudge are 0 for domain 1, setting sgfdda interval and ending time to 0 for that domain.
--- NOTE: obs_nudge_opt is 0 for domain 1, setting obs nudging interval and ending time to 0 for that domain.
--- NOTE: num_soil_layers has been set to 4
WRF V3.3.1 MODEL
*************************************
Parent domain
ids,ide,jds,jde 1 100 1 132
ims,ime,jms,jme -4 105 -4 137
ips,ipe,jps,jpe 1 100 1 132
*************************************
DYNAMICS OPTION: Eulerian Mass Coordinate
alloc_space_field: domain 1 , 596733464 bytes allocated
med_initialdata_input: calling input_input
Timing for processing wrfinput file (stream 0) for domain 1: 0.17400 elapsed seconds.
INPUT LandUse = "USGS"
LANDUSE TYPE = "USGS" FOUND 33 CATEGORIES 2 SEASONS WATER CATEGORY = 16 SNOW CATEGORY = 24
INITIALIZE THREE Noah LSM RELATED TABLES
LANDUSE TYPE = USGS FOUND 27 CATEGORIES
INPUT SOIL TEXTURE CLASSIFICATION = STAS
SOIL TEXTURE CLASSIFICATION = STAS FOUND 19 CATEGORIES
Timing for Writing wrfout_d01_2012-03-29_00:00:00 for domain 1: 0.86100 elapsed seconds.
Timing for processing lateral boundary for domain 1: 0.04900 elapsed seconds.
WRF TILE 1 IS 1 IE 100 JS 1 JE 132
WRF NUMBER OF TILES = 1
Timing for main: time 2012-03-29_00:03:00 on domain 1: 25.85200 elapsed seconds.
Timing for main: time 2012-03-29_00:06:00 on domain 1: 15.83300 elapsed seconds.
Timing for main: time 2012-03-29_00:09:00 on domain 1: 15.50600 elapsed seconds.
Timing for main: time 2012-03-29_00:12:00 on domain 1: 16.01300 elapsed seconds.
Timing for main: time 2012-03-29_00:15:00 on domain 1: 15.59900 elapsed seconds.
Timing for main: time 2012-03-29_00:18:00 on domain 1: 16.03300 elapsed seconds.
Flerchinger USEd in NEW version. Iterations= 10
Flerchinger USEd in NEW version. Iterations= 10
Flerchinger USEd in NEW version. Iterations= 10
WOULD GO OFF TOP: KF_ETA_PARA I,J,DPTHMX,DPMIN 52 89 NaN 5000.0000
Violación de segmento
--------------------
--------------------
ERROR ERROR ERROR
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
***************************** INSTALACIÓN DE ARW POST *******************************************************************************
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
VIDEO QUE DA CÓMO COMPILAR http://youtu.be/zXvfQ4i0IJE
ARWpost:
ARWpost, is a Fortran program that reads WRF ARW input and output file and generate GrADS output files.
Once the output files have been generated, GrADS can be used to producing horizontal or vertical cross section plots of scalar fields (contours) or vector fields (barbs or arrows), vertical profiles and soundings.
$ tar -xvzf ARWpost_V3.tar.gz
$ cd ARWpost
$ ./configure
** WARNING: No path to NETCDF and environment variable NETCDF not set.
** would you like me to try to fix? [y]
y
Enter full path to NetCDF include directory on your system
/usr/local/include
Enter full path to NetCDF library directory on your system
/usr/local/lib
created new ./netcdf_links directory
total 0
lrwxrwxrwx. 1 angelv angelv 18 abr 18 15:41 include -> /usr/local/include/
lrwxrwxrwx. 1 angelv angelv 14 abr 18 15:41 lib -> /usr/local/lib/
Will use NETCDF in dir: /home/angelv/ARWpost/netcdf_links
------------------------------------------------------------------------
Please select from among the following supported platforms.
1. PC Linux i486 i586 i686 x86_64, PGI compiler
2. PC Linux i486 i586 i686 x86_64, Intel compiler
3. PC Linux i486 i586 i686 x86_64, gfortran compiler
Enter selection [1-3] : 2
------------------------------------------------------------------------
Configuration successful. To build the ARWpost, type: compile
------------------------------------------------------------------------
$ ./compile
Se dió el siguiente error:
module_interp.f:(.text+0x6ece): undefined reference to `ncvgt_'
collect2: ld devolvió el estado de salida 1
make: [ARWpost.exe] Error 1 (no tiene efecto)
Instalación de Vis5D
Descargar desde la página web oficial: http://www.ssec.wisc.edu/~billh/vis5d.html
$ tar -xvzf vis5d+-1.3.0-beta.tar.gz
$ cd vis5d+-1.3.0-beta
$ ./configure
****************************************************
You need to install a 3D graphics library, preferably
the free OpenGL replacement, Mesa. You can download
Mesa from the Mesa home page:
http://www.mesa3d.org/
and install it by running:
./configure && make && su -c 'make install'
in the Mesa directory.
You may also need to run /sbin/ldconfig as root
to update the system after installing Mesa.
(First, add '/usr/local/lib' to /etc/ld.so.conf if
you installed Mesa under /usr/local, the default.)
****************************************************