- define materials so that they are recognized by material handling as existing card
- use "electrodynamics" as equation because this is the common name for the physics of these examples
- fix typos
- for some materials, just opening the material dialog and pressing OK to close it without any change resulted in a transient material
- for other materials this happened by clicking in the material dialog on a value to edit it, but not changing anything and press OK
The fix is to compare the items item by item and also handle the case that only digits of numbers are different
- on creating a new material object, don't pollute the console wit wrong error messages (if no material is yet selected, of course nothing can be found)
- fix that for anew fluid materials the material editor was started with solid materials
- when the option "use this task panel" is not checked the edit fields must be disabled.
This also fixes the often hard to understand issue that while scrolling to the end of the dialog the material suddenly changes to "_transient" because the scroll wheel can trigger to change the edit fields.
- the material editor failed for Fluid materials because this info was not passed to it. Instead always solid materials were loaded.
- also fix warning about too long variable name and remove unnecessary debug code
- active already the analysis
- generate the mesh preferably directly, also if this fails, load the rough meshes
- use value for Air is they are in our Air material card
- apply material to the body (not necessary but good practice, the examples are there to teach people and for more complex models setting the material to a body is important)
- it was often criticized that our default solver CCX is not connected to the results pipeline system. One had to connect it manually, the create the different filter etc. but as soon as one changed a constraint and re-run the solver the whole work was gone and one had to recreate the pipeline.
This PR solves this by creating a pipeline and by reloading new results to it on a solver re-run.
The CCX results dialog feature is not touched, since the pipeline is hidden when the dialog is active.
- if pvtu file filtering is on, there is by design not on every call of WriteColorData() data
(on other occasions of GetArray(array) the result is checked, for two calls is was forgotten)
- also some automatic code formatting according to our current clang file
- it is sensible to filter by default, however, it turned out that on some complex models Elmer fails to compute if the mesh volume regions are too small (in most cases) or at a certain mesh region. By disabling the filtering, one gets at least for the latter case a visual feedback where the mesh volume of the different CPU are (by also setting a transparency to the result pipeline).
- To speed up analyses one calculates on several CPU cores. The result is a partial VTU file.
Unfortunately when applying a transparency the boundaries of the volumes computed by each CPU core are always visible. This makes it often unusable for visualizations.
The solution is to filter the results the same way a clip filter does.
- the ViewProvider sorting of the field can be different from the sorting in the dialog
- also hide a Contours property (I forgot this when the contours filter was added)
- sort the functions alphabetically to know where to scroll to - eases the reading at least a bit
- some automatic reformatting according to our current clang file
- split too long lines
- no longer output an error on mesh from a BooleanFragments. There are cases when this fails, but other cases where one must use a BoopleanFragments compound and this works well, see https://forum.freecad.org/viewtopic.php?t=71070. Therefore a warning is sufficient.
- disable log messages not important for the average users.
- avoid code duplication
- the typical workflow is to change e.g. a constraint setting or material property and to check how and if this change changes the simulation result. it is therefore very annoying that on every call of a task panel the results are hidden.
This PR changes this to hide only meshes and the filter functions but to keep the results. If a user don't like to see results for example to select faces, he hides results anyway.