global-hydrodynamics / CaMa-Flood_v4

CaMa-Flood_v4 development master
Apache License 2.0
77 stars 42 forks source link

Error when flood depth downscale #67

Closed Hanki-hs closed 2 years ago

Hanki-hs commented 2 years ago

Hi, I get an error when using version 4.01(official release 20210331 obtained from the homepage) to downscale flood depth. For example, when I use the sample data downscaling(set the time period to August 2000), and the model only outputs the picture of the day at the end of the month like 20000831 or 20000830. Then I checked the run log and found that the output downscale flood depth file is only one day ./flood_20000831.bin . So the visualization step will appear that the files for other dates cannot be found(like file not found error ./flood_20000801.bin and file not found error ./dph20000801.bin ) I think the reason maybe that t01-downscale.sh for parallel computation using multiple CPUs had some mistake, because I'm using a Ubuntu system on a virtual machine(software : VMware) to use CaMa-Flood. But I didn't know how to solve it.

Regards, HongRui

Zhxdhhu commented 2 years ago

Hi Hongrui, not sure if the parallel computation is the cause. But please try by commenting out the parallel codes block (line 49-54; "&" in line 46; "wait" in line 64).

Hanki-hs commented 2 years ago

Hi , Thanks for your answer ,and I get an error when step of regional map . First, I followed the steps in the manual to edit the script s01-regional_map.sh and specify the domain of regional maps. But it don't generate input matrix like inpmat_test-1deg.bin and diminfo_test-1deg.txt. Then I found that there is only one newly generated file location.txt in the folder (region_15min/1min/), but the txt file location.txt is 0 bytes. Then, the error show forrtl: severe (37): inconsistent record length, unit 21 , file and not date: 1min . So I think the reason maybe that generate_input.F90 could not generate input matrix file. can anyone tell how to get rid of from this error?

Regards, HongRui

Zhxdhhu commented 2 years ago

Hi after exciting s01-regional_map.sh, the new folder (e.g. 1min) will be generated and the location.txt file should be generated as well. This file is small and only has three line in the default setting 1 narea iarea carea west east south north nx ny csize 1 1min -130.000 -60.000 20.000 55.000 4200 2100 0.016666666666667

Please check.

Hanki-hs commented 2 years ago

Hi, After trying several times, the file is still not generated. Because it keeps showing compilation errors, I think maybe there is something wrong with the installation of my compilation environment. So please help me to check what is wrong with my system environment installation?

the system

  1. ifort
$ ifort -v            
ifort version 2021.5.0
  1. gfortran

    $ gfortran -v
    Using built-in specs.
    COLLECT_GCC=gfortran
    COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper
    OFFLOAD_TARGET_NAMES=nvptx-none:hsa
    OFFLOAD_TARGET_DEFAULT=1
    Target: x86_64-linux-gnu
    Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.1' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-Av3uEd/gcc-9-9.4.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
    Thread model: posix
    gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
  2. netCDF

    
    $ nc-config --all

This netCDF 4.8.1 has been built with the following features:

--cc -> gcc --cflags -> -I/usr/local/netcdf4-needed/include -I/usr/local/netcdf4-needed/include --libs -> -L/usr/local/netcdf4-needed/lib -lnetcdf --static -> -lhdf5_hl -lhdf5 -lm -ldl -lz

--has-c++ -> no --cxx ->

--has-c++4 -> no --cxx4 ->

--has-fortran -> yes --fc -> gfortran --fflags -> -I/usr/local/netcdf4-needed/include -I/usr/local/netcdf4-needed/include --flibs -> -L/usr/local/netcdf4-needed/lib -lnetcdff --has-f90 -> --has-f03 -> yes

--has-dap -> no --has-dap2 -> no --has-dap4 -> no --has-nc2 -> yes --has-nc4 -> yes --has-hdf5 -> yes --has-hdf4 -> no --has-logging -> no --has-pnetcdf -> no --has-szlib -> no --has-cdf5 -> yes --has-parallel4 -> no --has-parallel -> no --has-nczarr -> yes

--prefix -> /usr/local/netcdf4-needed --includedir -> /usr/local/netcdf4-needed/include --libdir -> /usr/local/netcdf4-needed/lib --version -> netCDF 4.8.1

4. another  

$ which cmake pkg-config make gcc g++ /usr/bin/cmake /usr/bin/pkg-config /usr/bin/make /usr/bin/gcc /usr/bin/g++


When I change the location of NetCDF library in `Mkinclude_linux_ifort` and execute `compile.sh` , the system still shows that the compilation failed. But it succeed when I using `Mkinclude_linux_gfortran` to compile. How can I successfully use `Mkinclude_linux_ifort` to compile?