Commit Graph

562 Commits

Author SHA1 Message Date
Uwe
a346884c90 [skip CI] [FEM] equation.py: fix a tooltip
- the highest priority is computed first, the Wiki page is already correct
2022-10-24 15:21:54 +02:00
Bernd Hahnebach
c5d9b8e4ed FEM: get LGTM silent 2022-10-23 21:43:04 +02:00
Bernd Hahnebach
062f9f6616 FEM: Python pep8 code formatting 2022-10-22 23:05:51 +02:00
Uwe
876b4ebb8e [FEM] Elmer: fix flux equation
- the Flux solver must be executed before Heat and Electrostatic
- the analysis can have multiple Flux equations -> write a unique solver name to case.sif
- the Flux equation can currently only take 2 possible values. Therefore provide them as enum
2022-08-16 03:49:26 +02:00
Uwe
040f86c4d5 [FEM] fix body heat source constraint
- as the name implies, it must be possible to set the heat to different bodies
- for this a selection dialog is necessary
- check that heat is not zero
2022-08-15 02:47:01 +02:00
Uwe
a598398a0b [FEM] [skip CI] Elmer writer: fix indentation mistake
- found by Pylint checker
2022-08-14 20:41:29 +02:00
Uwe
27f50ad131 [FEM] add initial pressure constraint (#7364)
* [FEM] add initial pressure constraint

- this is needed for fluids
2022-08-14 20:00:36 +02:00
Uwe
9db5dff744 [FEM] fix handling of vacuum permittivity
- fix message that permittivity object was not handled
- set an expression, otherwise the user gets only "0.000" for the default of 8.8e-12
- use as unit the common "F/m" (this is also more user-friendly than "s^4*A^2 / (m^3*kg)")
- fix a ToDo
2022-08-14 17:59:42 +02:00
Uwe
e0585a328b [FEM] Elmer: writer: get rid of unnecessary function
- fixes the ToDo
- also remove unnecessary comment
2022-08-14 17:12:48 +02:00
Uwe
dce15245fa [FEM] Elmer: handle pressure for fluids
- Elmer allows external pressure on fluid boundaries as well as for solids
2022-08-14 16:08:14 +02:00
Uwe
dd370b9643 [FEM] Elmer: fix initial flow velocity
- we must allow must be several velocities because there can be several fluid bodies
- don't output flow velocity for solid bodies
2022-08-14 04:39:43 +02:00
Uwe
d7d49aa1a0 [FEM] [skip CI] Elmer: add copyright
-  heavily edited these files so I am to blame now too ;-)
2022-08-14 03:46:49 +02:00
Uwe
08f02885a4 [FEM] Elmer: sort solver methods for better overview 2022-08-14 03:18:35 +02:00
Uwe
d8784b7ac9 [FEM] Elmer: fix for the Idrs method
- while adding support for the IDRS method I forgot to implement its mandatory parameter
2022-08-14 01:48:20 +02:00
Uwe
a2e473c5b7 [FEM] Elmer: set constraints for solver systems
- set constraints according to the Elmer docs (no conversion necessary, existing properties just stay integers)
2022-08-14 01:45:34 +02:00
Uwe
d985525893 [FEM] Elmer: just sorting to keep the overview 2022-08-14 01:07:11 +02:00
luz paz
0beefe7c5d [FEM] Substitute underscore for whitespace in CalculiX solver output
Fixes #7360  
Forum thread: forum.freecadweb.org/viewtopic.php?p=617376#p617376
2022-08-13 16:41:59 +02:00
Uwe
b6cb5ffe4a [FEM] Elmer: fixes for multi-threading
- load the results depending on the used cores, not always the multi-thread results
- avoid unnecessary console output - this info is already output in tasks.py
- handle number of cores as int to save in total 2 conversions
2022-08-13 16:27:56 +02:00
Uwe
128877a7b7 [FEM] Elmer: only output a property if necessary 2022-08-13 14:39:06 +02:00
Uwe
08af39c1a8 [FEM] Elmer: fix heat flux handling
- the heat flux in the temperature constraint is not the heat flux from the heatflux constraint. The latter is in W/m² while the first one is W/mesh node
2022-08-13 05:54:34 +02:00
Uwe
2edf6abb2f [FEM] Elmer: add support to turn off solvers
- with this property the linear solver is turned off. As consequence one can this way also disable the execution of an equation without the need to delete the equation object

- also add missing preconditioners
2022-08-13 05:51:26 +02:00
Uwe
278598083d [FEM] Elmer: add tooltips 2022-08-13 03:45:42 +02:00
Uwe
b716644e27 [FEM] Elmer: fix handling if fluids + solid materials
- as already reported in the forum, it was not possible to make a flow simulation when there is also solid material.
2022-08-12 05:29:42 +02:00
Uwe
ed3625a0e0 [FEM] Elmer: allow lower relaxation factor
- despite the Elmer docs say 0.01 is the lover limit, for fluids like water, one might need down to 1e-4
2022-08-12 05:24:55 +02:00
Uwe
20047c94cd [FEM] [skip CI] formatting fix for potential 2022-08-10 13:42:29 +02:00
Uwe
ad2042e3cb [FEM] electric Potential: add missing conversion
- add missing conversion of property change that was already done before FC 0.20
2022-08-10 13:32:32 +02:00
Uwe
c219134a1e [FEM] Elmer: fix material bug and improve material handling
- for fluid material writing the elasticity solver failed with unknown Young Modulus
- fix regression with checking for fluid material. Checking the material of the bodies is not sufficient. One can e.g. have a solid without bodies defined, then it applied to all bodies and there might be a fluid defined for only one body. Checking the body's material would then deliver there is no fluid
2022-08-10 06:16:38 +02:00
Uwe
baaa5f8dd1 [FEM] Elmer: set constraints for relaxation factor
- the relaxation factor is crucial for nonlinear systems thus help the user by setting constraints and convenient steps.
Since the property stays a float no update is necessary, existing properties just stay a normal float
2022-08-10 04:10:47 +02:00
Uwe
48a206e3e4 [FEM] Elmer: notify users about missing fluid material
- it was often unclear when no flow equation was written to the case.sif (was a regression FC0.20)
2022-08-10 03:29:34 +02:00
Uwe
69efa37e49 [FEM] Elmer: automatic update for BiCGstablDegree
- up to last week we used the invalid BiCGstablDegree 0 thus update to the default of 2
2022-08-10 01:50:19 +02:00
Uwe
7f23e793eb [FEM] increase size of generic solver task panel
- increase it to size of CCX panel to create more room for the log output
2022-08-09 03:23:12 +02:00
Uwe
a32e927227 [FEM] Elmer: scale EigenMode results
- for an not yet known reason the result from Elmer are only for eigen analyses a factor 1000 (we send the mesh scaled to Elmer and it seems the eigen solver does not notice this)
Therefore scale these results
2022-08-08 12:33:57 +02:00
Uwe
d438514d9f [FEM] fix pipeline recompute issue
- after a simulation was run, the pipelines and its childs are recomputed but its shape coloring is not updated.

- also update XML documentation
- also remove comment in tasks.py for now
2022-08-08 02:04:07 +02:00
Uwe
8b06680eb8 [FEM] add framework to scale result mesh values
- it seems that we will need to scale result values (probably for the Elmer Eigen solver)
  This PR adds the framework to do this. It is meant for Elmer but designed versatile.
2022-08-08 01:48:08 +02:00
Uwe
90afc19382 [FEM] fix pipeline recompute bug
- on recomputing scalar or warp filters the information about the field was lost.
  This is because the validity of an array was tested before it is actually filled

- also fix MSVC warning of using a C++ keyword as variable
- also avoid an unnecessary recompute after Elmer solver was run
2022-08-08 00:06:54 +02:00
Uwe
460efa3a72 [FEM] Elmer: use defaults of ElmerGUI
- use also for the linear solver the defaults of ElmerGUI
2022-08-07 16:19:20 +02:00
Uwe
753a034708 [FEM] Elmer: fix for electricforce
- the default is to execute this solver after previous solution converged. This has to be output via the Exec Solver parameter
2022-08-07 16:17:55 +02:00
Bernd Hahnebach
7a1c9303d3 FEM: Python pep8 code formatting 2022-08-07 09:56:52 +02:00
Uwe
38aaf9bfb3 [FEM] Elmer: fix pipeline update issue
- the existing result pipeline can have several children. They must all be updated.
2022-08-07 06:22:42 +02:00
Uwe
e4e34affac [FEM] Elmer: resale the mesh using Elmer
- according to Peter from the Elmer team, we can use Elmer for both, scaling in and scaling back just for consistency
2022-08-07 05:32:54 +02:00
Uwe
42b3b8daed [FEM] [skip CI] fix a typo for nonlinear solving 2022-08-07 05:24:37 +02:00
Uwe
dcdbf6dcaa [Fem] Elmer: change default nonlinear tolerance
- ElmerGUI uses 1e-7 as default, so we should do too
2022-08-07 04:33:21 +02:00
Uwe
3d0def93cd [FEM] Elmer: fix default for heat
- revert change from comm it commit f3933016 - "None" is the correct default. (I mixed this up with Navier-Stokes)
2022-08-07 02:45:08 +02:00
Bernd Hahnebach
a7c24ccd49 FEM: Python pep8 code formatting 2022-08-07 01:39:52 +02:00
Uwe
81836aae11 [FEM] Elmer: polishing for nonlinear system
- add tooltips
- relaxation factor is usually not below 0.1 thus no expression is necessary
- sorting
2022-08-07 01:21:42 +02:00
Uwe
84db9d4baa [FEM] Elmer: fixes for electrostatics
- one needs to specify a file when calculating the capacitance matrix
- add electric flux to point filter results
- add missing parameters
- also some sorting
2022-08-07 01:11:07 +02:00
Uwe
ef4366a20d [FEM] Elmer: add missing parameters for Navier-Stokes solver 2022-08-06 23:36:40 +02:00
Bernd Hahnebach
3369aa4eca FEM: Python pep8 code formatting 2022-08-06 22:29:12 +02:00
Uwe
f39330163d [FEM] Elmer: code improvements
- don't redefine lists twice
- also fix mistake for heat - the default is computed convection
2022-08-06 22:20:44 +02:00
Uwe
b5faecea99 [FEM] Elmer: output the equation-specific settings for Navier-Stokes 2022-08-06 22:01:25 +02:00