This is the first approximation to the model ROMS, I'm trying to run the example INLET_TEST (SWAN-ROMS). But, in the compilation the following error arises:
cd /home/Modelos/ROMS/UPWELLING/Build; /usr/bin/mpif90 -c -frepack-arrays -O3 -ffast-math -I/usr/local/include -ffree-form -ffree-line-length-none mod_sources.f90
cd /home/Modelos/ROMS/UPWELLING/Build; /usr/bin/mpif90 -c -frepack-arrays -O3 -ffast-math -I/usr/local/include -ffree-form -ffree-line-length-none analytical.f90
analytical.f90:798.45:
& OCEAN(ng) % bed, &
1
Error: 'bed' at (1) is not a member of the 't_ocean' structure
analytical.f90:848.27:
logical :: EWperiodic=.FALSE.
1
Error: Symbol 'ewperiodic' at (1) already has basic type of LOGICAL
analytical.f90:849.27:
logical :: NSperiodic=.FALSE.
1
Error: Symbol 'nsperiodic' at (1) already has basic type of LOGICAL
analytical.f90:713.22:
IF (EASTERN_EDGE) THEN
1
Error: Symbol 'eastern_edge' at (1) has no IMPLICIT type
analytical.f90:737.23:
IF (NORTHERN_EDGE) THEN
1
Error: Symbol 'northern_edge' at (1) has no IMPLICIT type
analytical.f90:729.23:
IF (SOUTHERN_EDGE) THEN
1
Error: Symbol 'southern_edge' at (1) has no IMPLICIT type
analytical.f90:721.22:
IF (WESTERN_EDGE) THEN
1
Error: Symbol 'western_edge' at (1) has no IMPLICIT type
analytical.f90:325.23:
IF (NORTHERN_EDGE) THEN
1
Error: Symbol 'northern_edge' at (1) has no IMPLICIT type
make: *** [/home/Modelos/ROMS/UPWELLING/Build/analytical.o] Error 1
It seems that you are using an inconsistent analytical file with the new version of ROMS. All the lateral boundary conditions C-preprocessing options were removed in ROMS 3.6. Your analytical files need to be consistent with version 3.6. The NORTHERN_EDGE and friend directives have been removed form ROMS and replaced with logical switches instead. You are mixing various versions of ROMS. See release notes for 3.5 and 3.6.
You can download the test repository to run this application. Everything is provided for you. Check wikiROMS for instructions.
ana_grid.h: no values provided for Xsize, Esize, depth, f0, beta.
1
Error: 'ana_grid' at (1) is not a variable
analytical.f90:1351.14:
ana_vmix.h: no values provided for Akv.
1
Error: 'ana_vmix' at (1) is not a variable
analytical.f90:1370.14:
ana_vmix.h: no values provided for Akt.
1
Error: 'ana_vmix' at (1) is not a variable
make: *** [/Users/willingtonrenteria/roms/trunk/projects/upwelling/Build/analytical.o] Error 1
Well, i need to be more accurate!
This is my first attempt to compile ROMS following the "Tutorial: Installing ROMS on a Macintosh". I got this error, and found that this is similar to the INLET_TEST Case.
I have cleaned the *.mod *.o generated files, however the "analytical.o" is not generated, and this avoid the compilation(i thought).
Thanks for your help!
By the way, this is the error that y got:
frepack-arrays -g -fbounds-check -ffree-form -ffree-line-length-none analytical.f90
analytical.f90:396.14:
ana_grid.h: no values provided for Xsize, Esize, depth, f0, beta.
1
Error: 'ana_grid' at (1) is not a variable
analytical.f90:1351.14:
ana_vmix.h: no values provided for Akv.
1
Error: 'ana_vmix' at (1) is not a variable
analytical.f90:1370.14:
ana_vmix.h: no values provided for Akt.
1
Error: 'ana_vmix' at (1) is not a variable
make: *** [/Users/willingtonrenteria/ROMS/trunk/Projects/Upwelling/Build/analytical.o] Error 1
#if defined BASIN
Xsize=3600.0E+03_r8
Esize=2800.0E+03_r8
depth=5000.0_r8
f0=1.0E-04_r8
beta=2.0E-11_r8
...
#elif defined WINDBASIN
Xsize=2000.0_r8*REAL(Lm(ng),r8)
Esize=1000.0_r8*REAL(Mm(ng),r8)
depth=50.0_r8
f0=1.0E-04_r8
beta=0.0_r8
#else
ana_grid.h: no values provided for Xsize, Esize, depth, f0, beta.
#endif
The second-last line is what gets written to analytical.f90 by the preprocessor if none of the preceding "if defined" conditions has been satisfied. It's not valid Fortran, so the compiler chokes on it (with an irrelevant message).
The fact that you get this error means that none of the prepocessor symbols tested for has been defined. You need to remedy this deficiency; the usual way to do this is with a line like the following near the start of build.bash: