Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Extension of Elmer in computational glaciology
Post Reply
Axion004
Posts: 4
Joined: 17 Jul 2020, 22:41
Antispam: Yes

Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Post by Axion004 »

Hello,

I am working on Elmer and Elmer/Ice in Windows 10. To get familiar with Elmer/Ice, I am following the training material here. The third part of the training material includes a Toy flow-line model, which includes heat transfer on pages 41-55 of the PDF. This example references the Stokes_diagnostic_slide.sif file which has the following:

Code: Select all

Solver 2
   Equation = "Flowdepth"
   Exec Solver = "Before Simulation"
   Procedure = File "ElmerIceSolvers" "FlowDepthSolver"
   Variable = String "Depth"
   Variable DOFs = 1
   Linear System Solver = "Direct"
   Linear System Direct Method = "UMFPACK"
   Linear System Max Iterations = 200
   Linear System Convergence Tolerance = 1.0E-09
   Linear System Abort Not Converged = False
   Linear System Preconditioning = "ILU0"
   Linear System Residual Output = 1
   Gradient = Real -1.0E00
   ! switch that to True, if you want to have 
   ! free surface gradients to be computed
   !------------------------------------
   Calc Free Surface = Logical True
   ! the name for the exported (if not existing) added variable
   ! the gradients will be stored in variables with the base
   ! name given and "Grad1" and (in 3 dimensions) "Grad2" added,
   ! so in our case "FreeSurfGrad1" and "FreeSurfGrad2"
   ! again, if those variables did not exist, they will be
   ! automatically created
   !-----------------------------------------------------------
   Freesurf Name = String "FreeSurf"
End
In particular, this example assumes that ElmerIceSolvers.so is inside the directory

Code: Select all

C:\Program Files\Elmer 8.4-Release\share\elmersolver\lib\
When I run ElmerSolver, the terminal states that ElmerIceSolvers and ElmerIceSolvers.dll are missing.

Code: Select all

ELMER SOLVER (v 8.4) STARTED AT: 2020/07/17 16:33:27
ParCommInit:  Initialize #PEs:            1
MAIN:
MAIN: =============================================================
MAIN: ElmerSolver finite element software, Welcome!
MAIN: This program is free software licensed under (L)GPL
MAIN: Copyright 1st April 1995 - , CSC - IT Center for Science Ltd.
MAIN: Webpage http://www.csc.fi/elmer, Email elmeradm@csc.fi
MAIN: Version: 8.4 (Rev: Release, Compiled: 2020-04-09)
MAIN:  Running one task without MPI parallelization.
MAIN:  Running with just one thread per task.
MAIN:  Lua interpreted linked in.
MAIN: =============================================================
MAIN:
MAIN:
MAIN: -------------------------------------
MAIN: Reading Model: Stokes_diagnostic.sif
LoadInputFile: Scanning input file: Stokes_diagnostic.sif
OpenIncludeFile: Trying to include file:  "steady_ELA400_bedrock.dat"
OpenIncludeFile: Trying to include file:  "steady_ELA400_surface.dat"
LoadInputFile: Loading input file: Stokes_diagnostic.sif
Model Input:  Unlisted keyword: [depth] in section: [initial condition 1]
Model Input:  Unlisted keyword: [gradient] in section: [solver 2]
Model Input:  Unlisted keyword: [calc free surface] in section: [solver 2]
Model Input:  Unlisted keyword: [freesurf name] in section: [solver 2]
Model Input:  Unlisted keyword: [limit temperature] in section: [material 1]
Model Input:  Unlisted keyword: [constant temperature] in section: [material 1]
Model Input:  Unlisted keyword: [conpute normals] in section: [boundary condition 1]
OpenIncludeFile: Trying to include file:  "steady_ELA400_bedrock.dat"
OpenIncludeFile: Trying to include file:  "steady_ELA400_surface.dat"
Model Input:  Unlisted keyword: [depth] in section: [boundary condition 3]
LoadInputFile: Number of BCs: 3
LoadInputFile: Number of Body Forces: 1
LoadInputFile: Number of Initial Conditions: 1
LoadInputFile: Number of Materials: 1
LoadInputFile: Number of Equations: 1
LoadInputFile: Number of Solvers: 3
LoadInputFile: Number of Bodies: 1
Loading user function library: [StructuredMeshMapper]...[StructuredMeshMapper_Init0]
Loading user function library: [ElmerIceSolvers]...[FlowDepthSolver_Init0]
Can not find ElmerIceSolvers.
Can not find ElmerIceSolvers.dll.
Can not find .\ElmerIceSolvers.
Can not find .\ElmerIceSolvers.dll.
Can not find C:\Program Files\Elmer 8.4-Release/share/elmersolver/lib\ElmerIceSolvers.
Can not find C:\Program Files\Elmer 8.4-Release/share/elmersolver/lib\ElmerIceSolvers.dll.
This points to an installation problem. However, through looking at this question I was unable to fix the problem on my own.

I downloaded Elmer from Sourceforge and the installation didn't include any Elmer/Ice Solvers inside

Code: Select all

C:\Program Files\Elmer 8.4-Release\share\elmersolver\lib
I also looked at this question but was unable to fix the problem. I'm now manually creating new solvers to work with my existing Elmer FEM installation.

Is there something that I have missed? Do I need to do something different on Windows in order to get the correct solvers in ..\share\elmersolver\lib? What steps could I take to solve this issue?
kevinarden
Posts: 2221
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Post by kevinarden »

Have you tried the version from the elmer website, it is the most up to date

http://www.nic.funet.fi/pub/sci/physics/elmer/bin/
Axion004
Posts: 4
Joined: 17 Jul 2020, 22:41
Antispam: Yes

Re: Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Post by Axion004 »

I uninstalled Elmer and then reinstalled the following versions:
  • ElmerFEM-gui-mpi-Windows-AMD64.exe (Newest Version)
  • elmerfem-8.4_Windows-AMD64.exe
  • elmerfem-mpi-nightly_Windows-AMD64.exe
  • elmerfem-nightly_Windows-AMD64.exe
All four versions run into the same error. The directory C:\Program Files\Elmer 8.4-Release\share\elmersolver\lib doesn't contain Elmer/Ice .dll files. I might have to manually add the solvers (and .dll) files through the elmerice directory in the source code.
kevinarden
Posts: 2221
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Post by kevinarden »

in Linux I was able to compile the solvers with ICE

cmake -DWITH_ElmerIce:BOOL=TRUE -DWITH_ELMERGUI:BOOL=FALSE -DWITH_MPI:BOOL=TRUE -DCMAKE_INSTALL_PREFIX=../install ../elmerfem

following instructions for compileing on https://www.csc.fi/web/elmer/sources-and-compilation

This gives you ElmerSolver with ElmerIce include
in the directory

./elmer/install

my main elemer tool is installed in LINUX with with

sudo apt-add-repository ppa:elmer-csc-ubuntu/elmer-csc-ppa
sudo apt-get --allow-unauthenticated upgrade
sudo apt-get install elmerfem-csc-eg

which gives ElmerGUI, regular ElmerSolver, and ElmerGrid

Then I copy the compiled solvers in ./elmer/install/lib/elmersolver to /usr/lib/elmersolver

then the Ice solvers are available to the default ElmerSover and the ElmerGUI, ElmerGrid still works.
Axion004
Posts: 4
Joined: 17 Jul 2020, 22:41
Antispam: Yes

Re: Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Post by Axion004 »

I'm investigating those instructions on Windows (I ran into a problem with cmake which I am Googling to resolve).

Are there alternative recommendations for a Windows build?
kevinarden
Posts: 2221
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Post by kevinarden »

The most certain way in windows is to use the Elmer Virtual Machine.

The next best option is to duel boot into an Linux OS or convert to Linux.

The third option is to find other Window users of ElmerICE.

At work I have to use windows, but am not allowed to install anything. At home I can do what I want, and I choose Linux for the freedom, flexibility, and no cost.

If the issue is missing DLL files for ElmerICE than maybe someone has them shared somewhere.
Axion004
Posts: 4
Joined: 17 Jul 2020, 22:41
Antispam: Yes

Re: Installation Problem: Cannot find ElmerIceSolvers and ElmerIceSolvers.dll.

Post by Axion004 »

Indeed, the Elmer Virtual Machine works well in Windows 10. Thanks for your help, Kevin.

The executable files don't contain any Elmer/Ice files so a Windows user would need to use the virtual machine, dual boot, or manually get the required .dll files (and add them to the correct directory in C:).
Post Reply