Commit Graph

164 Commits

Author SHA1 Message Date
marioalexis
449f9b9be8 Fem: Create own base class for Python Mesh objects 2024-06-21 19:26:18 -05:00
marioalexis
2bb2160fa2 Fem: Create own base class for Python Element objects 2024-06-21 19:26:18 -05:00
marioalexis
aaef5236b8 Fem: Remove dependency of calculix solver classes on user parameters - fixes #13383 2024-06-17 10:58:57 -05:00
marioalexis
108687b938 Fem: Improve constraint BodyHeatSource 2024-06-03 03:15:14 -03:00
marioalexis84
ecabfa1080 Fem: Improve constraint section print (#14046)
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2024-05-20 11:00:48 -05:00
marioalexis
8920d76d93 Fem: Load heat flux from CalculiX results - fixes #12117 2024-05-20 11:00:19 -05:00
Florian Foinant-Willig
0feb9367de FEM: prevent python added properties to be removed 2024-04-29 18:33:45 +02:00
luzpaz
65cdbe3e89 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
d8012f74ba Fem: Add partial support for hexahedral elements - fixes #12526 2024-03-11 12:03:15 -05:00
FEA-eng
8056b2dec1 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
86794b0378 Fem: Add support for cyclic symmetry - fixes #12155 2024-02-08 16:08:59 -06:00
marioalexis
3dbb4b3dd3 Fem: Improve constraint tie - partial fixes #11653 2024-01-26 13:44:16 -03:00
marioalexis
56d4214317 Fem: Improve self weight constraint - fixes #11652 2024-01-20 08:57:46 -07:00
Max Wilfinger
d491ac0865 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
d115018b94 Fem: Change ConstraintPressure::Pressure property to App::PropertyPressure 2023-10-03 17:44:31 -03:00
wmayer
ef9936a940 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
38a01939e0 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
14c88f41fb [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
866ea2551d [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
b496a41cd1 [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
850f392a7c [FEM] extend current density to 3D
- to be used for magnetodynamic 3D equation
2023-02-10 01:30:14 +01:00
Uwe
f6abb77758 [FEM] add new constraint for magnetization 2023-02-09 14:41:25 +01:00
Uwe
7f7fb62239 [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
ae2a1050ef [FEM] [skip ci] constraint_currentdensity.py: fix a typo 2023-02-08 06:27:27 +01:00
Uwe
65eb154eac [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
f46ed721c6 FEM: Python pep8 code formatting 2022-10-22 23:05:51 +02:00
HarryvL
3c3e2f63e6 [FEM] added critical strain ratio functionality (#7467)
* added critical strain ratio functionality
2022-09-14 01:30:17 +02:00
Uwe
d0ee6a46a0 [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
32d74bb0ca [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
25a829bd0c [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
4218fb280a [FEM] permittivity: improve code
- in commit 2f0824be I hard-coded the permittivity incorrectly
2022-08-14 19:12:59 +02:00
Uwe
865481fcf4 [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
a2ac0ddc9a [FEM] Flow constraints: fix wrong tooltips 2022-08-13 03:35:22 +02:00
Uwe
49d4b75716 [FEM] [skip CI] formatting fix for potential 2022-08-10 13:42:29 +02:00
Uwe
b458ef0208 [FEM] Constraint: BodeHeat: fix regression from commit 4a349525
- a simple indentation mistake
2022-07-31 21:17:52 +02:00
Uwe
9c7af25d26 [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
4325f0386c [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
41a8ed83af FEM: python code formatting 2022-07-12 15:04:26 +02:00
Uwe
a5b86128be [FEM] Elecrostatic: use App::PropertyElectricPotential 2022-03-26 02:29:19 +01:00
Ajinkya Dahale
0327a09879 [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
16a82d1eb7 [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
cc97865141 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
8974e228b8 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
f0b3231c32 FEM: mesh gmsh object, improve code in on doc restore 2021-06-17 06:40:34 +02:00
Uwe
d573386ec1 [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
58b0dd38c2 [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
ec7bffa94b FEM: gmsh mesh, set back standard element order to 2nd, changed in eefb6bc0babf, 2021-03-24 17:05:06 +01:00
donovaly
ac6f25ea4a [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
21e511f63f [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
cd0f3405ee FEM: pep8 2021-03-13 21:47:50 +01:00