precice / nix-packages

Official preCICE adapters and solvers packaged with the Nix package manager. See https://precice.discourse.group/t/precice-goes-nix-os-improving-reproducibility-of-scientific-software/
5 stars 1 forks source link

Unable to run Example #28

Open iimog opened 2 months ago

iimog commented 2 months ago

I'm unable to run the perpendicular-flap tutorial using nix-precice. I installed nix-static on Ubuntu 22.04 through running setup.sh. After that I cloned the precice-tutorials and in tutorials/perpendicular-flap/solid-calculix tried running:

nix-static shell --accept-flake-config "github:precice/nix-packages#precice-calculix-adapter" "github:precice/nix-packages#precice-openfoam-adapter"
./run.sh

This results in the error message:

---[precice] ERROR:  The configuration contains an unknown tag <data:vector>.
Full output ``` Started on: Fri, 12 Jul 2024 13:02:07 +0200 ************************************************************ CalculiX Version 2.20, Copyright(C) 1998-2022 Guido Dhondt CalculiX comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions, see gpl.htm ************************************************************ You are using an executable made on Sun Jul 31 18:08:37 CEST 2022 The numbers below are estimated upper bounds number of: nodes: 1470 elements: 244 one-dimensional elements: 0 two-dimensional elements: 0 integration points per element: 27 degrees of freedom per node: 3 layers per element: 1 distributed facial loads: 0 distributed volumetric loads: 0 concentrated loads: 1482 single point constraints: 756 multiple point constraints: 1 terms in all multiple point constraints: 1 tie constraints: 0 dependent nodes tied by cyclic constraints: 0 dependent nodes in pre-tension constraints: 0 sets: 4 terms in all sets: 2220 materials: 1 constants per material and temperature: 2 temperature points per material: 1 plastic data points per material: 0 orientations: 0 amplitudes: 3 data points in all amplitudes: 3 print requests: 0 transformations: 0 property cards: 0 STEP 1 Dynamic analysis was selected Newton-Raphson iterative procedure is active Decascading the MPC's Determining the structure of the matrix: Using up to 1 cpu(s) for setting up the structure of the matrix. number of equations 3660 number of nonzero lower triangular matrix elements 63428 Starting FSI analysis via preCICE using the geometrically linear CalculiX solver... Using up to 1 cpu(s) for the stress calculation. Using up to 1 cpu(s) for the energy calculation. Using up to 1 cpu(s) for the symmetric stiffness/mass contributions. Factoring the system of equations using the symmetric spooles solver Using up to 1 cpu(s) for spooles. Using up to 1 cpu(s) for the stress calculation. Using up to 1 cpu(s) for the energy calculation. Setting up preCICE participant Solid, using config file: config.yml ---[precice] ERROR: The configuration contains an unknown tag . ```

I get the same error message when running the fluid-openfoam example in tutorials/perpendicular-flap/fluid-openfoam:

nix-static shell --accept-flake-config "github:precice/nix-packages#precice-calculix-adapter" "github:precice/nix-packages#precice-openfoam-adapter"
source "$(nix-static eval --raw 'github:precice/nix-packages#precice-openfoam-adapter.out')/bin/set-openfoam-adapter-vars"
./run.sh
Output ``` Started on: Fri, 12 Jul 2024 14:03:35 +0200 /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2206 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : v2206 OPENFOAM=2206 version=v2206 Arch : "LSB;label=32;scalar=64" Exec : blockMesh Date : Jul 12 2024 Time : 14:03:35 Host : discounter PID : 1421108 I/O : uncollated Case : /tmp/np/tutorials/perpendicular-flap/fluid-openfoam nProcs : 1 trapFpe: Floating point exception trapping enabled (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 5, maxFileModificationPolls 20) allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Creating block mesh from "system/blockMeshDict" No non-linear block edges defined No non-planar block faces defined Creating topology blocks Creating topology patches - from boundary section Creating block mesh topology Check topology Basic statistics Number of internal faces : 4 Number of boundary faces : 22 Number of defined boundary faces : 22 Number of undefined boundary faces : 0 Checking patch -> block consistency Creating block offsets Creating merge list (topological search)... Deleting polyMesh directory "constant/polyMesh" Creating polyMesh from blockMesh Creating patches Creating cells Creating points with scale (1 1 1) Block 0 cell size : i : 0.136132 .. 0.0680662 j : 0.0666667 .. 0.0666667 k : 1 .. 1 Block 1 cell size : i : 0.0680662 .. 0.136132 j : 0.0666667 .. 0.0666667 k : 1 .. 1 Block 2 cell size : i : 0.136132 .. 0.0680662 j : 0.0692199 .. 0.13844 k : 1 .. 1 Block 3 cell size : i : 0.0333333 .. 0.0333333 j : 0.0692199 .. 0.13844 k : 1 .. 1 Block 4 cell size : i : 0.0680662 .. 0.136132 j : 0.0692199 .. 0.13844 k : 1 .. 1 There are no merge patch pairs Writing polyMesh with 0 cellZones ---------------- Mesh Information ---------------- boundingBox: (-3 0 0) (3 4 1) nPoints: 5828 nCells: 2790 nFaces: 11283 nInternalFaces: 5457 ---------------- Patches ---------------- patch 0 (start: 5457 size: 45) name: inlet patch 1 (start: 5502 size: 45) name: outlet patch 2 (start: 5547 size: 33) name: flap patch 3 (start: 5580 size: 63) name: upperWall patch 4 (start: 5643 size: 60) name: lowerWall patch 5 (start: 5703 size: 5580) name: frontAndBack End /*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2206 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : v2206 OPENFOAM=2206 version=v2206 Arch : "LSB;label=32;scalar=64" Exec : pimpleFoam Date : Jul 12 2024 Time : 14:03:35 Host : discounter PID : 1421119 I/O : uncollated Case : /tmp/np/tutorials/perpendicular-flap/fluid-openfoam nProcs : 1 trapFpe: Floating point exception trapping enabled (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 5, maxFileModificationPolls 20) allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 Selecting dynamicFvMesh dynamicMotionSolverFvMesh Selecting motion solver: displacementLaplacian Applying motion to entire mesh Selecting motion diffusion: quadratic Selecting motion diffusion: inverseDistance Selecting patchDistMethod meshWave PIMPLE: Operating solver in PISO mode Reading field p Reading field U Reading/calculating face flux field phi Selecting incompressible transport model Newtonian Selecting turbulence model type laminar Selecting laminar stress model Stokes No MRF models present No finite volume options present Constructing face velocity Uf Courant Number mean: 0 max: 0 Courant Number mean: 0 max: 0 Starting time loop ---[preciceAdapter] Loaded the OpenFOAM-preCICE adapter - v1.2.1. --> FOAM Warning : From static bool Foam::UPstream::initNull() in file UPstream.C at line 39 The dummy Pstream library cannot be used in parallel mode ---[preciceAdapter] Reading preciceDict... ---[precice] ERROR: The configuration contains an unknown tag . ```

I already did have nix installed. So I also tried it using nix rather than nix-static but this results in the same error message.

Also, I use zsh as my default shell. That's why I had to quote the flakes to avoid the error

zsh: no matches found: github:precice/nix-packages#precice-calculix-adapter
MakisH commented 2 months ago

---[precice] ERROR: The configuration contains an unknown tag <data:vector>.

I am not a maintainer in this repository, but this error most probably means that this is preCICE v2 looking at tutorials prepared for preCICE v3.

The last tutorials release that works with preCICE v2 is v202211.0: https://github.com/precice/tutorials/releases/tag/v202211.0 The packages are probably looking for the master or develop branch, which was recently updated to preCICE v3.

iimog commented 2 months ago

Thank you! This was indeed the problem. It works after cloning the tutorial with:

git clone --depth 1 --branch v202211.0 https://github.com/precice/tutorials

It might be a good idea to add this information to the README (or maybe even better, update the nix package to use preCICE v3). Thanks again for the quick and helpful reply.