Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
ElmerCSC
GitHub Repository: ElmerCSC/elmerfem
Path: blob/devel/ReleaseNotes/release_6.2.txt
3194 views
1
Juha Ruokolainen, 09 May 2011, 13:18
2
3
Hello all,
4
5
we have updated Elmer windows binaries at sourceforge.net/projectes/elmerfem. There are now
6
a few new binary packages in addition to the familiar installer. The packages are:
7
8
o 32bit windows installer with GUI and compiler gfortran-elmer (gfortran 4.3.3)
9
10
o 32bit windows .zip file (no installer, just unzip to your preferred location) with GUI but
11
no compiler, compiled with recent MinGW default compiler (gcc 4.5.2 )
12
13
o 64bit windows .zip file, includes only ElmerSolver and related utilities, i.e. without GUI or compiler.
14
The package was compiled with recent x86_64-mingw32-w64 compiler package. Useful for those with
15
large models where 2GB memory is not enough.
16
17
The download pages and "README" files within the packages have more detailed information.
18
19
We have decided to call this package (SVN rev 5191) Elmer release 6.2. (Somewhat cursory) release notes
20
below.
21
22
Hopefully we'll be able to do more regular release update in future.
23
24
Enjoy the new features.
25
Elmer Team.
26
27
28
Elmer changes between 6.0 and 6.2
29
=================================
30
31
Below is a list of most important new features between versions 6.0 and 6.2 in period 21.9.2010 and 6.5.2011.
32
Additionally there are some smaller features, numerous bug fixes, new test case and improvements in the documentation.
33
34
More precisely, there were 548 commits to the version control system and 36 new test cases.
35
36
37
ElmerSolver Library functionality
38
-----------------------------------------------
39
40
* In Norm computation it is now possible to pick just some components. Keyword
41
'Nonlinear System Norm Components' is used to set the desired ones.
42
43
* New dependency type 'opposes' and made that and 'equal' special cases of the
44
curve interpolation using just one parameter.
45
46
* Cubic spline interpolation for parameter tables. The cubic spline interpolation may be selected
47
by adding specifier "Cubic" to table defintion:
48
49
CODE: SELECT ALL
50
param = Variable $varname
51
Real Cubic
52
..
53
End
54
55
56
* Parallel mesh to mesh interpolation: The mesh-to-mesh interpolation should work
57
now in parallel without any modifications to serial cases.
58
59
* External loadable matrix vector multiply with the Solver-section keyword:
60
CODE: SELECT ALL
61
Matrix Vector Proc = "file" "proc"
62
63
The routine is called using call syntax as below
64
65
CODE: SELECT ALL
66
SUBROUTINE MatVecSubr(n,Rows,Cols,Values,x,b,0)
67
INTEGER::n
68
INTEGER :: Rows(n+1),Cols(*)
69
REAL(KIND=dp) :: x(n),b(n),Values(*)
70
71
where n equals system size, Rows, Cols & Values contain the CRS matrix structure with 1 based indexing.
72
The routine should return the value of b=Ax.
73
74
* Created a new solution procedure "BlockSolver" that enables block-wise treatment of the stiffness
75
matrix. This enables easily some efficient block-preconditioning strategies. The approach is still
76
experimental and there are just some simple examples.
77
78
79
* Implemented soft limiter with upper and lower bounds. It may be used both for boundaries and for bodies.
80
The keywords are '$varname Lower Limit' and '$varname Upper Limit'.
81
82
* Optional timing for the whole solver execution. The keyword is 'Solver Timing = Logical'. The times
83
will be saved by SaveScalars solver, if present.
84
85
* New keyword '$varname Condition Passive = Logical' to constraint 'body wise' passive dergees of freedom.
86
87
* Boundary conditon keyword 'Passive Target = Logical' to dynamically add new boundary condtion
88
between 'active' and 'passive' domains.
89
90
* SIF keyword 'mumps percentage increase working space' for setting MUMPS parameter icntl(14)
91
92
* Try preserving mesh grading when calling EqualSplitting(). The feature should work optimally when grading
93
profile is 1D. The keyword in Simulation section is 'Mesh Keep Grading = Logical'.
94
95
* Add (experimental) Feti solver applicable to Poisson and Navier type of equations. Typical usage
96
by "Linear System Solver = feti", "Linear System Iterative Method = CPG", "Feti Kernel Rot-Trans = True".
97
Works only in parallel.
98
99
* Solver section keywords "Dump system Matrix = filename" and "Dump system RHS = filename"
100
to write current matrix and/or rhs vector to disk. These are directly loadable to matlab, for example.
101
102
* Implemented a constant offset for periodic BCs. This is taken into use by the keyword
103
"Periodic BC Offset $varname = Real".
104
105
* Interface the CHOLMOD, a Cholesky factorization package. This is strictly for positive-definite
106
systems.
107
108
Build instructions:
109
110
o get SuiteSparse
111
112
http://www.cise.ufl.edu/research/sparse/SuiteSparse/
113
114
o get Metis
115
116
http://glaros.dtc.umn.edu/gkhome/metis/metis/download
117
118
Easiest to put the metis source under SuiteSparse/.
119
120
o Edit the SuiteSparse/UFconfig/UFconfig.mk
121
122
- change the installation directory
123
124
- add -fPIC to CFLAGS on x86_64 platforms
125
126
o Edit SuiteSparse/metis-4.x.x/Lib/Makefile
127
128
- add -fPIC to CFLAGS on x86_64 platforms
129
130
o make
131
132
make install
133
134
o replace $ELMER_HOME/lib/libamd.a with SuiteSparseInstall/libamd.a
135
136
o Compile elmer/fem with
137
138
CODE: SELECT ALL
139
export CHOLMOD_DIR=SuiteSparseInstall/
140
export CFLAGS="$CFLAGS -DHAVE_CHOLMOD -I$CHOLMOD_DIR/"
141
export FCPPFLAGS="$FCPPFLAGS -DHAVE_CHOLMOD"
142
143
144
and f.ex.
145
CODE: SELECT ALL
146
configure .. --with-blas="-L$CHOLMOD_DIR -lcholmod -lcamd -lccolamd -lcolamd -lmetis -L$ACML_DIR/ -lacml"
147
148
or similiar. In the .sif-file solver keywords "Linear system Symmetric=True; Linear System Direct Method=cholmod"
149
may be used.
150
151
Dynamics Solvers:
152
----------------------------
153
154
* HeatSolver: Added alternative keyword for enthalpy, 'Specific Enthalpy' given in units [E]/[m] rather than [E]/[V].o
155
156
* FlowSolver: Anisotropic Viscosity model. Set "Viscosity Model=anisotropic" and give "Visocity" as a 3x3 (2D) or
157
6x6 (3D) matrix.
158
159
* FlowSolver :First version of rotating coordinates system in Navier-Stokes equations. Invoked by adding keyword
160
"Angular Velocity" in body force section.
161
162
* FlowSolver: Newton linearization of the material law. Newton linearization of the non-newtonian material models
163
is done automatically when the Newton linearization is switched on.
164
165
* SSTKOmega: Use Reichardt wall function in SST K-Omega model (if requested). Usage as in other turbulence models,
166
e.g. set "Wall Law = True" in the boundary condition section.
167
168
* ShearRateSolver: Added a simple solver for computing the local shearrate field using Galerkin method.
169
170
* MagnetodDynamics: Newton type iteration of nonlinear materials for steady and transient cases within "MagnetoDynamics"
171
solver. Test case in "tests/mgdyn_bh".
172
173
* FreeSurfaceSolver: Feature to account for horizontal ALE contribution, set 'ALE Formulation = Logical True' in Solver section
174
175
* RigidMeshMapper: Enabled the saving of velocity field in rigid mesh mapper.
176
177
* RichardsSolver: Activated the richards solver in keywords, documentation and gui
178
179
* StatElecBoundary: 1D electrostatic BCs from for planar MEMS structures, for example.
180
181
* SaveScalars: Two statistical operators: 'sum abs' and 'mean abs' (the latter only works in serial).
182
183
* SaveGridData: Added a new subroutine for saving uniform data for visualization purposes in vti format (VtkImageData).
184
185
* ResultOutputSolver: Introduced binary and single precision output for XML VTK saving.
186
187
* IsosurfaceSolver: Improved the isosurface extractor for multiple surfaces and for isolines.
188
189
* ElementSizeSolver: Just a small solver that gives the nodal elementsize (for rather uniform meshes).
190
191
* SaveLine & SaveScalars: Optional parameter 'Output Directory = String'
192
193
ElmerGUI
194
---------------
195
196
* Free text fields for dynamic editors.
197
198
199