Commit Graph

160 Commits

Author SHA1 Message Date
marioalexis84
33e4a5baed Fem: Improve constraint section print (#14046)
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2024-05-20 11:00:48 -05:00
marioalexis
a73d081a46 Fem: Load heat flux from CalculiX results - fixes #12117 2024-05-20 11:00:19 -05:00
Florian Foinant-Willig
abd5d4daef FEM: prevent python added properties to be removed 2024-04-29 18:33:45 +02:00
luzpaz
5839134e95 Fix various typos throughout the codebase (#13029)
* Fix various typos throughout the codebase

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-03-18 16:54:30 -05:00
marioalexis
673f5d0745 Fem: Add partial support for hexahedral elements - fixes #12526 2024-03-11 12:03:15 -05:00
FEA-eng
9df688b8e6 FEM CalculiX isotropic and kinematic hardening (#12666)
* Update material_mechanicalnonlinear.py

* Update write_femelement_material.py

* Update material_mechanicalnonlinear.py
2024-03-04 11:11:48 -06:00
marioalexis
dfbc90d351 Fem: Add support for cyclic symmetry - fixes #12155 2024-02-08 16:08:59 -06:00
marioalexis
38f7283016 Fem: Improve constraint tie - partial fixes #11653 2024-01-26 13:44:16 -03:00
marioalexis
9da842d884 Fem: Improve self weight constraint - fixes #11652 2024-01-20 08:57:46 -07:00
Max Wilfinger
a1f0674020 Renaming FEM mesh region to mesh refinement (only Users POV / tooltips) (#11489)
* project to document on information, merge, util

* rename MehRegion to MeshRefinement (tooltip/user PoV only)
2023-12-04 10:41:04 -06:00
Uwe
6845cb66f8 Fem: Change ConstraintPressure::Pressure property to App::PropertyPressure 2023-10-03 17:44:31 -03:00
wmayer
83d4080fe8 App: fixes #10460: App::PropertyPythonObject is not saving data
Since Py3.11 the methods names __setstate__ and __getstate__ conflict with the method names added to the object class.
Thus rename them to 'loads' and 'dumps'
2023-09-24 10:56:35 -05:00
luzpaz
129d5882a7 Migrate domain name from freecadweb to freecad (#9352)
* Migrate domain name from freecadweb to freecad
* Migrate src/Mod/Material files
* Migrate Stylesheet related files
* Migrate *.svg files
* Migrate miscellaneous files
* Migrate some build files
* Migrate recently added TD AR_IRAM template files

Closes #6415
2023-04-24 15:19:20 -05:00
Uwe
b38533d070 [FEM] several Elmer fixes
- fix whitespace in the SIF writer
- Elmer GUI uses only 20 nonlinear iterations, so we should do the same (500 were also not sensible)
- don't restrict nonlinear-Newton iterations to 100, 500 might be necessary for turbulent flow
- update author
2023-03-22 07:27:20 +01:00
Uwe
9007723331 [FEM] rewrite initial velocity constraint
- same as #8963 but for initial velocity

- add an example file that demonstrates the influence of the initial velocity
- some fine-tuning for the existing flow example
2023-03-20 04:58:24 +01:00
Uwe
06061e37dc [FEM] rewrite velocity constraint
- complete revision of the constraint.

This is a breaking change, meaning existing constraints won't work.

This is possible because since 2 days ago the whole flow equation did not work at all. Also the existing constraint implementation if buggy and cannot be used to do the Elmer tutorial. Also, the constraint is only used by Elmer and only be the flow equation.

Since nobody complained about the obvious wrong results, we can assume the flow equation was not yet in practical usage (and for FC 0.20 we known that it does not work at all, first with FC 0.20.1).

It is necessary since it must be possible to either input a velocity or an equation. With an equation, a velocity profile can be specified.

- update the flow examples accordingly:
-- simplify them since an initial and and output velocity is not necessary to specify
-- use a formula as input velocity for the non-turbulent example
2023-03-20 01:57:09 +01:00
Uwe
aca9e15f66 [FEM] extend current density to 3D
- to be used for magnetodynamic 3D equation
2023-02-10 01:30:14 +01:00
Uwe
04915b694b [FEM] add new constraint for magnetization 2023-02-09 14:41:25 +01:00
Uwe
ddfdce612e [FEM] Elmer: extent potential constraint
- it is now possible to specify a an electric potential vector field
2023-02-08 07:02:35 +01:00
Uwe
78a988ba27 [FEM] [skip ci] constraint_currentdensity.py: fix a typo 2023-02-08 06:27:27 +01:00
Uwe
82b6e03625 [FEM] add current density constraint
- also add corresponding App::PropertyCurrentDensity

- also fix a typo in test_object.py
2023-02-05 21:10:15 +01:00
Bernd Hahnebach
062f9f6616 FEM: Python pep8 code formatting 2022-10-22 23:05:51 +02:00
HarryvL
9dc9d6735a [FEM] added critical strain ratio functionality (#7467)
* added critical strain ratio functionality
2022-09-14 01:30:17 +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
0a18346767 [FEM] potential constraint: change default value
- in practice one wants to apply potentials to faces via this constraint, therefore enable to set a potential by default, also assure that the initial unit is V
2022-08-15 02:41:35 +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
32d7663e46 [FEM] permittivity: improve code
- in commit 9db5dff7 I hard-coded the permittivity incorrectly
2022-08-14 19:12:59 +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
5a72f2d1fa [FEM] Flow constraints: fix wrong tooltips 2022-08-13 03:35:22 +02:00
Uwe
20047c94cd [FEM] [skip CI] formatting fix for potential 2022-08-10 13:42:29 +02:00
Uwe
aa7408f4c6 [FEM] Constraint: BodeHeat: fix regression from commit 22c64ef8
- a simple indentation mistake
2022-07-31 21:17:52 +02:00
Uwe
d3066617bd [FEM] BodyHeat constraint: hide unused property
- the constraint does not take a references and when trying to set one as user because one thinks this empty property must be set, one gets a recompute error
2022-07-27 02:55:29 +02:00
Uwe
22c64ef8be [FEM] update bodyHeatSource
- to the state of the other constraints

(this constraint is currently completely broken by the way)
2022-07-26 01:47:09 +02:00
Bernd Hahnebach
e49abfb350 FEM: python code formatting 2022-07-12 15:04:26 +02:00
Uwe
30928c0710 [FEM] Elecrostatic: use App::PropertyElectricPotential 2022-03-26 02:29:19 +01:00
Ajinkya Dahale
421ece90b6 [FEM] Add backward compatibility for simple hardening
Prior to a recent commit (or this, if squashed), yield points of a non-linear
material with simple hardening were stored as three different properties. These
changes consolidate them into the new `YieldPoints` property.
2021-09-17 11:07:16 +02:00
Ajinkya Dahale
5f4b87035b [FEM] Add tools for more yield points in simple hardening materials
String List instead of String should allow for arbitrarily many entries,
theoretically.

Note the defaults previously in `YieldPoint1` an `YieldPoint2` were arbitrary.
Now the list is kept empty by default.

Fixes issue #4720.
2021-09-17 11:07:16 +02:00
UR-0
974f41e0cc FEM: constraint centrif, App objects and methods:
- CalculiX centrifugal body loads
- CalculiX label CENTRIF from *DLOAD card
- implement FreeCAD NonGui code
- the object, ccx writer, etc
2021-07-09 22:03:58 +02:00
Bernd Hahnebach
49ce8dcab9 FEM: solver calcilix, implement missing document restore for missing attributes for buckling analyisie FINISH BITTE 2021-06-17 06:40:45 +02:00
Bernd Hahnebach
f9a6dd77eb FEM: mesh gmsh object, improve code in on doc restore 2021-06-17 06:40:34 +02:00
Uwe
1e5c0fcef7 [FEM] add support for 3D recombinations (#4706)
* [FEM] add support for 3D recombinations

currently we only support surface recombinations but for some applications 3D recombinations are useful as well

* add support for the recombination algorithms

using a sensible algorithm is important to get useful results, see https://wiki.freecadweb.org/FEM_MeshGmshFromShape#Properties
where I described examples
2021-04-13 07:32:44 +02:00
donovaly
cc0af9b4dd [FEM] proper support for Gmsh HighOrder optimization
There are 4 optimizers available while we only supported 1. This PR adds support for all.
2021-04-08 13:29:50 +02:00
Bernd Hahnebach
cf7e072ca9 FEM: gmsh mesh, set back standard element order to 2nd, changed in 7fb5a2d72a, 2021-03-24 17:05:06 +01:00
donovaly
75371bb238 [FEM] add mesh algorithms
- Gmsh has since a while 2 new mesh algorithms
- on the other hand the two algorithms ""Frontal Delaunay" and "Frontal Hex" are deprecated and not listed anymore in the docs: https://gmsh.info/doc/texinfo/gmsh.html#index-Mesh_002eAlgorithm3D
and indeed all attempts with these 2 algorithms fail
2021-03-24 17:01:47 +01:00
donovaly
7fb5a2d72a [FEM] add GMSH mesh order setting to dialog
- also set default to 1st order mesh
2021-03-24 17:00:12 +01:00
Bernd Hahnebach
69aacc2fc5 FEM: pep8 2021-03-13 21:47:50 +01:00
UR-0
65b9f8b43d [FEM]implement Gmsh mesh property "MeshSizeFromCurvature" 2021-03-13 21:13:30 +01:00
Bernd Hahnebach
a62b5b314b FEM: code formatting, revert parts of commit f4a65dcbb6 2021-02-16 16:17:47 +01:00
luz paz
f4a65dcbb6 FEM: doxygen 2020-12-04 17:50:00 +01:00
luz paz
484693c1d8 FEM: remove superfluous 'pass'
Fixes LGTM alert  
Per the documentation:  
```
A 'pass' statement is only necessary when it is the only statement in a block (the list of statements forming part of a compound statement). This is because the purpose of the 'pass' statement is to allow empty blocks where they would otherwise be syntactically invalid. If the block already contains other statements then the 'pass' statement is unnecessary.
```
2020-11-10 23:20:23 +01:00