Skip to content

hpcdb/workflow-sedimentation

Repository files navigation

Introduction

This repository contains the source code of libMesh-sedimentation. It is a simulation solver built on top of a widely used parallel fine element framework, libMesh, which supports parallel simulation of multiscale, multiphysics applications. libMesh interfaces with several libraries for Computational Science and Engineering applications (e.g., PeTSc, Metis, Parmetis, LAPACK). Also, scientific visualization tools like ParaView, are typically used in these applications to gain insight from the computations. libMesh-sedimentation is instrumented with DfAnalyzer calls, to track provenance data while the simulation runs for monitoring and data analysis, and with DfAdapter, to track provenance data of steering actions while user steers simulation parameters, for analyzing consequences of steering actions in the results.

User documentation for docker

Clones

  • docker pull vitorss/debian:sedimentation-vitor
  • git clone [email protected]:hpcdb/workflow-sedimentation.git
  • LOCAL_DIR=/path/to/repository/in/local/machine

Run docker:

docker run -v $LOCAL_DIR:/shared -i -t vitorss/debian:sedimentation-vitor /bin/bash

Now, in docker:

Adjust the Docker variables

/shared/src-local/sedimentation/DfA.properties

# Docker
pg_dir=/shared/workflow-sedimentation/src-local/sedimentation/prov/pg
di_dir=/shared/workflow-sedimentation/src-local/sedimentation/prov/di

/shared/src-local/sedimentation/execute-solver.sh

# Docker
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/opt/paraview/5.4/lib/paraview-5.4
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/paraview/5.4/lib/paraview-5.4

Change the end to:

time mpirun -np 2 ../../libmesh-sedimentation/sediment-opt -i lock_necker3D_pc11.in -m lock_necker3D.msh -e extraction.py -v visualization.py -o output -d /shared/workflow-sedimentation/src-local/sedimentation/output | tee -a "output-solver.log"

/shared/workflow-sedimentation/src-local/sedimentation/pg-dataflow.sh

# Docker
PGDIR=/shared/workflow-sedimentation/src-local/libmesh-sedimentation

/shared/workflow-sedimentation/src-local/sedimentation/provenance.in

# Docker
directory = /shared/workflow-sedimentation/src-local/sedimentation
pgFilePath = /shared/workflow-sedimentation/src-local/dfa/PG-1.0.jar
rdeFilePath = /shared/workflow-sedimentation/src-local/dfa/RDE-1.0.jar
rdiFilePath = /shared/workflow-sedimentation/src-local/dfa/RDI-1.0.jar
access=EXTRACTION
cartridge=csv
bin=/programs/fastbit/bin
extraArguments=[b:precision=2]

Make the solver:

Uncomment include config/config.docker

export LIBMESH_DIR=/programs/libmesh/build
cd /shared/libmesh-sedimentation
rm -rf .depend
rm -rf .libs
make clean
make

Cheat sheet of Execution commands:

monetdb-start-all
cd /shared/workflow-sedimentation/src-local/sedimentation
./pg-dataflow.sh --> generates the conceptual dataflow
./delete.sh --> deletes data from a previous execution
./start-data-ingestor.sh --> cleans the database and initializes MonetDB
./execute-solver.sh --> Executes the sedimentation solver

Disclaimer

You do not need Docker to run any of the programs or libraries used by libMesh-sedimentation. A Docker image is available for convenience so you will have the dependencies packaged together in a container. If you cannot use Docker in your execution environment, you will need to download and install all dependencies individually.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •