Commit Graph

3750 Commits

Author SHA1 Message Date
Uwe
8a8fe98454 fix some occurrences where size() is misused as Boolean
- as suggested by @wwmayer: 70714eedc9 (r69648152)
2022-03-27 21:38:15 +02:00
wmayer
96de83006b Fem: [skip ci] use the required type for the vtk API 2022-03-27 20:54:26 +02:00
wmayer
06aa45d7d4 Fem: fix segmentation fault in FemPostDataAlongLineFilter::GetAxisData()
It's possible that pdata becomes a null pointer.
Forum thread: https://forum.freecadweb.org/viewtopic.php?f=18&t=67507
2022-03-27 19:18:33 +02:00
Uwe
42596f2f1b [FEM] fix value display in result pipelines
- as reported here: https://forum.freecadweb.org/viewtopic.php?p=583133#p583133

The point is that the user cannot know that he has to multiply the shown numbers for displacements by 0.001 but for the displayed stresses by 1e6 while the temperature is already correct.

The fix is to be consistent and display in SI units. This commit does this and was tested using unit systems with mm and meter based length.
2022-03-27 18:24:03 +02:00
wmayer
5591f98b17 FEM: [skip ci] fix possible crash in setupFilter() function 2022-03-27 11:32:33 +02:00
wmayer
aab8a91e08 Fem: [skip ci] fix compiler warnings
* add Python.h to PreCompiled.h to fix warning for MSVC: warning C4005: 'COMPILER': macro redefinition
* add Python.h to FemPostPipelinePyImp.cpp to fix warning for clang: pyconfig.h:1672:9: warning: '_LARGEFILE_SOURCE' macro redefined [-Wmacro-redefined]
2022-03-27 11:21:19 +02:00
Uwe
93482ea8e5 [FEM] more work on filter activation
- warp, clip filters etc. are perfectly valid over a line filter
- handle activation for line, stress line and point filter
2022-03-27 07:44:35 +02:00
Uwe
0180a2ffff [FEM] introduce custom pipeline mode
- in order to benefit from the previous fix when e.g. setting up a clip filter of a clip filter one needs the set inputs untouched. The existing modes however changed all an the addition of a new filter.
Use this new mode as default since it preserves the inputs as the users set them on the filter creation
2022-03-27 07:19:56 +02:00
Uwe
d62f2895e2 [FEM] fix some post filter creation issues
- only one object can be used
- don't forbid to use another filter as input for a new filter
2022-03-27 07:09:36 +02:00
Uwe
dfd91f3ea2 [FEM] fix activation logic of post filters
only activate them when sensible/possible
2022-03-27 00:57:41 +01:00
Uwe
4dbb0f9155 [FEM] fix activation of post pipeline
it can only be activated if a result object is selected from which the pipeline can be loaded
2022-03-27 00:22:06 +01:00
Uwe
cebb40378d [skip CI] [FEM] improve wording in material settings dialog
- also improve layout settings
2022-03-26 06:13:27 +01:00
Uwe
84e55125f9 [skip CI] [FEM] uniform labeling in a settings dialog
- also improve layout settings
2022-03-26 05:59:44 +01:00
Uwe
db4bd62899 [skip CI] [FEM] fix a typo in a dialog 2022-03-26 05:31:19 +01:00
Uwe
045c609b3f [skip CI] [FEM] uniform labeling in a dialog 2022-03-26 05:22:29 +01:00
Uwe
0734cba01c [FEM] [Skip CI] improve Gmsh settings UI
- fix spelling of "Gmsh"
- fix layout issue reported by Qt Designer
2022-03-26 05:15:32 +01:00
Uwe
bff25dfdd1 [FEM] adapt electrostatic examples to changed unit handling
- also a coding improvement
2022-03-26 04:54:36 +01:00
Uwe
a450c50765 [FEM] fix creation of PostPipeline object
- the object was not created inside the analysis container (while this was correctly done when it is created from a solver run)
- after the creation, the object was only hardly visible for the user
2022-03-26 04:37:17 +01:00
Uwe
067e2938d1 [skip CI] [FEM] remove an unused header
- also some code styles improvements
2022-03-26 04:32:17 +01:00
Uwe
a5b86128be [FEM] Elecrostatic: use App::PropertyElectricPotential 2022-03-26 02:29:19 +01:00
Uwe
f2def75852 [FEM] Elmer examples: use better names for constraints
fixes a ToDo and the unit tests work fine nevertheless
2022-03-26 01:46:54 +01:00
Uwe
db0c7ecb54 {skip CI] revert unwanted change from previous commit 2022-03-25 23:53:22 +01:00
Uwe
c5191b152a [skip CI] [FEM] results dialog: fix layout issued reported by Qt Designer 2022-03-25 23:41:58 +01:00
Uwe
ccbeedb4e4 [FEM] fix missing recompute
as reported here: https://forum.freecadweb.org/viewtopic.php?p=582525#p582525

- also fix potential issue that FemGui is used by the script but not loaded
2022-03-25 21:22:15 +01:00
Uwe
5f3b9d42ff [FEM] fix missing recompute
after the ccx_dat_file object has been changed, the analysis must be recomputed
2022-03-25 21:05:43 +01:00
Uwe
26faa6a43f [FEM] remove new framework CCX from toolbar
"new framework" implies especially to new users that this is the CCX of choice. But it is not, since you cannot Since we keep it in the menu and experienced users will find it.
2022-03-25 20:00:39 +01:00
Uwe
650eac3a56 [FEM] fix broken Z88 part 5/5: add missing toolbar icon
- now that it is working, expose Z88 to the toolbar as well
2022-03-25 19:55:32 +01:00
Uwe
fdd103814c [FEM] fix broken Z88 part 4: don't hardcode memory for iterative solvers
- we must not hardcode the number of coincidence vector places
The user must have a chance to change this setting for the iterative solvers according to the Z88 docs.
We use as default the number Z88 uses in its distributed example.
2022-03-25 19:28:24 +01:00
Uwe
db3e261653 [FEM] update Z88 tests
(I doubt that it is sensible to check if a hardcoded memory value is written. The test will fail if you use a non-default memory setting on your FreeCAD. The CI uses of course the default)
2022-03-25 19:04:21 +01:00
Uwe
b186269f54 [skip CI] [FEM] some style changes by MSVC
- to avoid annoying unnecessary diffs while working on the FEM module
2022-03-25 18:55:33 +01:00
Uwe
f88c95d743 [FEM] fix broken Z88 part 3: don't hardcode memory
- we must not hardcode the number of stiffness matrix places, especially not for the Cholesky solver
The user must have a chance to change this setting in case of a solver error. This is also according to the Z88 docs that says it is a two step process:
- the solver first computed the necessary places
- the user must set the value accordingly in case it is too low

- also some code style fixes
2022-03-25 18:40:12 +01:00
Uwe
b3208f643e [FEM] fix broken Z88 part 2: fix error handling
- when the solver failed, we cannot return a non-existing res_obj
2022-03-25 18:01:12 +01:00
Uwe
e9835c0b10 [FEM] fix broken Z88 part 1: don't hardcode solver
- especially don't hardcode the choly solver that fails quickly for finer meshes
- setting sorcg as default since it shows the best performance with the cantilever tests
2022-03-25 16:49:03 +01:00
wmayer
54a5114d71 Fem: split strings with placeholders to make sure it's still created correctly if translation is broken 2022-03-25 15:48:46 +01:00
Uwe
0e98485112 [FEM] fix Gmsh deletion handling
- fixes the issue that one could accidentally delete a mesh despite it has submeshes

- also a coding style improvement
2022-03-25 05:50:31 +01:00
Uwe
58c020b47f [FEM] mechanical result: add proper deletion handling
- use a warning with possibility to cancel like for the C++ FEM objects
2022-03-25 05:38:49 +01:00
Uwe
8bd4bb9c6d [skip CI] [FEM] remove unused comment 2022-03-25 05:35:44 +01:00
Uwe
80a828af39 [FEM] handle Elmer result mesh zoom properly
- also fix an issue that after a successful simulation, no result was visible
2022-03-24 22:01:45 +01:00
wmayer
076501b73b FEM: include header with export macros 2022-03-24 20:47:56 +01:00
wmayer
ee28112968 Fem: include Python.h before any vtk headers to fix compiler warnings 2022-03-24 20:05:27 +01:00
Uwe
6abef5bee1 [FEM] re-add a header as compile fix 2022-03-24 19:10:39 +01:00
Uwe
c9ac61408c [FEM] TaskPostBoxes: remove unused headers
- also some sorting
2022-03-24 18:58:01 +01:00
Uwe
4d3a963864 [FEM] add missing functions deletion handling
as it was, one could delete the functions container breaking the simulation. Now you get a warning.

- also remove unused includes
2022-03-24 16:17:44 +01:00
Uwe
f95e76843c [FEM] add missing analysis deletion handling
as it was, one could delete the analysis container breaking everything. Now you get a warning.

- also fix typos
2022-03-24 15:56:08 +01:00
Uwe
e8d64631ad [FEM] App headers: remove unused headers 2022-03-24 15:35:32 +01:00
Uwe
59b48d4192 [FEM] handle deletion of solver objects
As it was, a deletion of non-empty solver could not be stopped, one could only decide if childs would be deleted too
Now you get a warning and can stop the deletion
2022-03-24 14:55:40 +01:00
Uwe
5212bd79fe [skip CI] [FEM] fix a comment
- remove misleading comment
- add a comment
2022-03-24 14:52:28 +01:00
Uwe
0a52649d9d [FEM] ViewProviderDocumentObject: fix compiler warning and error
- add missing include
- compare string properly
2022-03-24 06:13:45 +01:00
Uwe
a8d398e896 [FEM] fix deletion issue
- as reported here: https://forum.freecadweb.org/viewtopic.php?p=582532#p582532

Now only a warning is issued if the user tries to delete the main PostObject if it is not empty.
2022-03-24 05:44:02 +01:00
Uwe
c9f2c1d40c [FEM] fix transparency bug
- as reported here: https://forum.freecadweb.org/viewtopic.php?p=582526#p582526
After setting the transparency, the object has to be redrawn

- also remove a doubled header
2022-03-24 04:50:54 +01:00