gher-uliege / diva Goto Github PK
View Code? Open in Web Editor NEWDIVA (Data-Interpolating Variational Analysis) is a software tool dedicated to the spatial interpolation of in situ data in oceanography.
License: GNU General Public License v3.0
DIVA (Data-Interpolating Variational Analysis) is a software tool dedicated to the spatial interpolation of in situ data in oceanography.
License: GNU General Public License v3.0
I have used ODV DIVA gridding capabilities and when a density field is available it is possible to perform an isopycnal gridding using DIVA.
Can this be done from code? I am running DIVA on python, either through the python script or calling the fortran code, but I cannot figure out how to perform isopycnal gridding. Could this be done with some implementation of the advection/difusion field?
Thanks!
I performed a benchmark of the performance of diva3Ddress
as compared to doing the 2D divadress
and found that there seems to be a rather large variation in the time taken to run 3D analysis as compared to 2D variational analysis.
I would like to know if this is expected or if I am setting up parameters wrong while doing 3D analysis.
The parameter data was based on Argo data sample available on DIVA Web.
The contours were generated using the bathymetry NetCDF available from DIVA Web results.
For the 3D analysis, I prepared data for higher depth levels by taking the Argo data as parameter value at surface, and then, for every depth level (at 100m intervals), I reduced the surface parameter by 10%.
I have tarred the input
directories used in both cases and attached them here.
input_2d_variational.tar.gz
input_diva3d_argo_reduced.tar.gz
You can find the benchmarks here.
Sheet named 2D - VariationalAnalysis
contains the 2D benchmarks.
Sheet named 3D - VariationalAnalysis
contains the 3D benchmarks.
I would have expected that for 3D interpolation with 2 levels, the time taken would be comparable to that for running 2D variational analysis for a comparable number of points x2. However, the 3D analysis seems to take much longer than that.
I also find that turning off parameter optimization in 3D (by setting the param in 3DInfo file to 0) considerably speeds up the analysis.
From a git clone, I run:
cd DIVA3D/src/Fortran
make
which failed with:
gfortran extract.f -o /home/ulg/gher/abarth/src/DIVA/DIVA3D/src/Fortran/../../bin/extract.a -L/usr/local/lib -lnetcdff -L/usr/local/lib -lnetcdf -lnetcdf -I/usr/local/include
extract.f:285: Error: Can't open included file 'netcdf.inc'
make[1]: *** [/home/ulg/gher/abarth/src/DIVA/DIVA3D/src/Fortran/../../bin/extract.a] Error 1
make[1]: Leaving directory `/home/users/a/b/abarth/src/DIVA/DIVA3D/src/Fortran/Extensions'
make: *** [extensions] Error 2
nf-config
is in my path. Can DIVA detect automatically the location of my NetCDF library?
This is the output of nf-config --all
$ nf-config --all
This netCDF-Fortran 4.4.4 has been built with the following features:
--cc -> gcc
--cflags -> -I/home/easybuild/.local/easybuild/software/netCDF-Fortran/4.4.4-foss-2016b/include -I/home/easybuild/.local/easybuild/software/OpenBLAS/0.2.18-GCC-5.4.0-2.26-LAPACK-3.6.1/include -I/home/easybuild/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-2016b-OpenBLAS-0.2.18-LAPACK-3.6.1/include -I/home/easybuild/.local/easybuild/software/FFTW/3.3.4-gompi-2016b/include -I/home/easybuild/.local/easybuild/software/netCDF/4.4.1-foss-2016b/include -DgFortran
--fc -> gfortran
--fflags -> -I/home/easybuild/.local/easybuild/software/netCDF-Fortran/4.4.4-foss-2016b/include
--flibs -> -L/home/easybuild/.local/easybuild/software/netCDF-Fortran/4.4.4-foss-2016b/lib -lnetcdff -L/home/easybuild/.local/easybuild/software/GCCcore/5.4.0/lib64 -L/home/easybuild/.local/easybuild/software/GCCcore/5.4.0/lib -L/home/easybuild/.local/easybuild/software/OpenBLAS/0.2.18-GCC-5.4.0-2.26-LAPACK-3.6.1/lib -L/home/easybuild/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-2016b-OpenBLAS-0.2.18-LAPACK-3.6.1/lib -L/home/easybuild/.local/easybuild/software/FFTW/3.3.4-gompi-2016b/lib -L/home/easybuild/.local/easybuild/software/netCDF/4.4.1-foss-2016b/lib64 -lnetcdf -lnetcdf -lm -lpthread
--has-f90 -> no
--has-f03 -> yes
--has-nc2 -> yes
--has-nc4 -> yes
--prefix -> /home/easybuild/.local/easybuild/software/netCDF-Fortran/4.4.4-foss-2016b
--includedir-> /home/easybuild/.local/easybuild/software/netCDF-Fortran/4.4.4-foss-2016b/include
--version -> netCDF-Fortran 4.4.4
Hi,
I setup my new "Diva on VirtualBox", and after that I compile the latest DIVA ( .
I want to make an analysis for "Water body chlorophyll-a".
Driver:
1 1 5 10 -30
Min L 0.2
Max L 10.0
Min SN 0.1
Max SN 5.0
Analysis 11
lower 1
upper 4
4D netcdf : 11
0
0
contour.depth:
20
10
5
0
monthlist: 0911
yearlist:
19952004
19962005
.....................
20052014
When I run divadoall:
sylvain@sylvain-VirtualBox:~/DIVA/diva-4.7.1/JRA4/Climatology$ divadoall
divadoall: divadoall run starts at:
Tue Apr 17 14:24:19 CEST 2018
dos2unix: converting file datasource to Unix format ...
: integer expression expected/JRA4/Climatology/divadoall: line 51: [: 11
: integer expression expected/JRA4/Climatology/divadoall: line 54: [: 11
: integer expression expected/JRA4/Climatology/divadoall: line 59: [: 11
: integer expression expected/JRA4/Climatology/divadoall: line 63: [: 11
divadoall: Start divadoall: idorefe = 0
divadoall: idoanal = 0
divadoall: Working in /home/sylvain/DIVA/diva-4.7.1/JRA4/Climatology
dos2unix: converting file ./input/contour.depth to Unix format ...
dos2unix: converting file varlist to Unix format ...
dos2unix: converting file yearlist to Unix format ...
dos2unix: converting file monthlist to Unix format ...
dos2unix: converting file qflist to Unix format ...
") 11tax error: invalid arithmetic operator (error token is "e 291: -30
divadoall:
divadoall: =================================================================
divadoall: ======================= Starting analysis loops ===========
divadoall: =======================
divadoall: ======================= Starting analysis loop on :
divadoall: ======================= variable Water body chlorophyll-a
divadoall: ======================= year 19952004
divadoall: ======================= month 0911
divadoall: working on variable Water body chlorophyll-a
divadoall: 63
divadoall: ====================== Checking levels data coverage ======
divadoall: ====================== Finished checking data coverage ======
: integer expression expected/JRA4/Climatology/divadoall: line 451: [: 5
: integer expression expected/JRA4/Climatology/divadoall: line 451: [: -30
..........................................................
I look forward for some tips.
Cheers !
George
When compiling with ifort
I get messages like these:
/tmp/ifortnXvtPa.o: In function `jmbconstr_..1':
constr.f:(.text+0x12c2): relocation truncated to fit: R_X86_64_32S against symbol `jmbcon_' defined in COMMON section in /tmp/ifortnXvtPa.o
constr.f:(.text+0x1384): relocation truncated to fit: R_X86_64_32S against symbol `jmbcon_' defined in COMMON section in /tmp/ifortnXvtPa.o
...
so that diva.a
is not compiled.
O.S.: Linux, Ubuntu 16.04.5 LTS (Xenial Xerus)
Compiler: ifort
Compiling the code with ifort
, several messages like below for the codes using netCDF library:
ld: warning: libifport.so.5, needed by /home/ctroupin/Software/netCDF/lib/libnetcdff.so, not found (try using -rpath or -rpath-link)
ld: warning: libifcoremt.so.5, needed by /home/ctroupin/Software/netCDF/lib/libnetcdff.so, not found (try using -rpath or -rpath-link)
ld: warning: libimf.so, needed by /home/ctroupin/Software/netCDF/lib/libnetcdff.so, not found (try using -rpath or -rpath-link)
ld: warning: libsvml.so, needed by /home/ctroupin/Software/netCDF/lib/libnetcdff.so, not found (try using -rpath or -rpath-link)
ld: warning: libintlc.so.5, needed by /home/ctroupin/Software/netCDF/lib/libnetcdff.so, not found (try using -rpath or -rpath-link)
ld: warning: libirng.so, needed by /home/ctroupin/Software/netCDF/lib/libnetcdf.so, not found (try using -rpath or -rpath-link)
ld: divabath2topogrd.a: hidden symbol `__intel_cpu_feature_indicator_x' in /opt/intel/compilers_and_libraries_2018.1.163/linux/compiler/lib/intel64_lin/libirc.a(cpu_feature_disp.o) is referenced by DSO
ld: final link failed: Bad value
The code was:
and the error:
divacutNCDF
#####################
Start of divacutNCDF
#####################
dimensions are : 461 , 217 , 30 , 53
...
...
...
./divacutNCDF: line 54: 31561 Segmentation fault (core dumped) ../../DIVA3D/bin/test_inpolygon.a $ncfile $contfile $outfile $nx $ny $nz $nt $obs $idlen
###################
End of divacutNCDF
###################
The problem in the log:
...
Writing 4D NETCDF multi-year climatology file for Water_body_chlorophyll_a
dv4DYRwrt: 2 2
WRITE 4D NetCdf file gathering:
Water_body_chlorophyll_a.20112016.0103.10032.10033.anl.nc
Water_body_chlorophyll_a.20122017.0103.10032.10033.anl.nc
At line 234 of file dv4DYRwrt.F (unit = 12, file = '../3DWORK/3DNCinfo')
Fortran runtime error: End of file
NetCDF error: divaio.F90line 438 No such file or directory
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.