Skip to content

feature: update docker to enable assimilation procedures #5

@dksasaki

Description

@dksasaki

Assimilation procedures require the compilation flags -lparpack and -larpack that are absent from the current docker image. According to the ROMS wiki, the compilation requires a modified version of these libraries that can be obtained from the SVN trunk.

I was able to compile the model with the libraries (notice that the correct flags for data assimilation must be activated in the corresponding .h file).

I'll register the procedure here, so we can incorporate the modifications to the docker image eventually.

Within the interactive docker container:

cd rom_src
mkdir Lib
cd Lib
svn checkout https://www.myroms.org/svn/src/libs/ARPACK
cd ARPACK

We need to set the appropriate flags to gfortran. Edit the ARmake.inc lines 147-148 to

#FC	= ifort
#FFLAGS	= -ip -O3 -fp-model precise

FC	= gfortran
FFLAGS = -O3 

And lines 154-155 to

#PFC     = mpif90
#PFFLAGS = -ip -O3 -fp-model precise

FC	= gfortran
FFLAGS = -O3 

After editing, in the same directory, run:

make all

After compiling, libarpack.aand libparpack.a are ready. We move them to the root directory with

sudo mv libarpack.a /usr/lib/x86_64-linux-gnu/
sudo mv libapack.a /usr/lib/x86_64-linux-gnu/

Afterwards, the compilation should run successfully.
This procedure must be adapted to the dockerfile.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions