Commit Graph

402 Commits

Author SHA1 Message Date
Przemo Firszt
1f8b964c20 FEM: Fix problem with using old displacement value after recalculation
Reported-by: bernd
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-09 13:07:49 -03:00
Przemo Firszt
6f472719e0 FEM: Rename animateNodes to applyDisplacementToNodes
Also animateNodes is now applyDisplacementToNodes.
The funcions are not doing animation, but are responsible
for deforming mesh.

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:34 +01:00
Przemo Firszt
4702b72cb1 FEM: Remove not used setColorStress function
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:34 +01:00
Przemo Firszt
1b5ff48484 FEM: Add curly brackets to one line for/if or if/if commands
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:34 +01:00
Przemo Firszt
c3c79596fc FEM: Disable Show result button if there are no results in analysis
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:34 +01:00
Przemo Firszt
92baddfce9 FEM: Add Purge FEM results button
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:34 +01:00
Przemo Firszt
c703fe8294 FEM: Simplify setting FEM results when user selected None
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:34 +01:00
Przemo Firszt
2eb5562d76 FEM: Fix problem with Show button not reverting mesh deformation
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:34 +01:00
Przemo Firszt
bc5e94edca FEM: Don't use bool as variable name
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:21 +01:00
Przemo Firszt
3eea4daf89 FEM: Don't check is Show is checked after slider has been moved.
Slider is disbled is Show is not ticked, so that check is redundant.

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:35:10 +01:00
Przemo Firszt
2c8675f24d FEM: Switch to reading analysis stats from AnalysisStats object
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:28:44 +01:00
Przemo Firszt
cab75ef79a FEM: Add AnalysisStats object
This commit add a new object to Analysis: AnalysisStats. AnalysisStats
contains list with 15 values (an example):
-0.000776373	<-- minimum X displacement
-7.74494e-06	<-- average X displacement
0.000774115	<-- maximum X displacement
-0.00416267	<-- minimum Y displacement
-0.00204191	<-- average Y displacement
0		<-- maximum Y displacement
-0.000775108	<-- minimum Z displacement
1.09288e-05	<-- average Z displacement
0.000775122	<-- maximum Z displacement
0		<-- minimum Abs displacement
0.00214509	<-- average Abs displacement
0.00430481	<-- maximum Abs displacement
0.390598	<-- minimum Von Mises Stress
0.93509		<-- average Von Mises Stress
1.47765		<-- maximum Von Mises Stress

Those values will be used to set field values in FEM results dialog
instead of currently used values returned by setNodeColorByResult
function.

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:28:44 +01:00
Przemo Firszt
99c7da8610 FEM: simplify reading lines from frd file
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:28:44 +01:00
Przemo Firszt
5ecda048a0 FEM: replace input with frd_file in ccxFrdReader.py
input is a built-in function name and should not be used as variable name

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:28:44 +01:00
Przemo Firszt
5f272f74e4 FEM: use is instead of == for None in ccxFrdReader.py
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:28:44 +01:00
Przemo Firszt
4218d91aea FEM: replace deprecated has_key in ccxFrdReader.py
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:28:44 +01:00
Przemo Firszt
425e7ca8d6 FEM: white space fixes in ccxFrdReader.py
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-06-02 11:28:44 +01:00
wmayer
a996650a1d + fix whitespaces 2015-05-26 17:55:38 +02:00
Przemo Firszt
d51d1df63e FEM: fix white spaces in ccxInpWriter.py
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-26 14:33:43 +01:00
Przemo Firszt
1dd7e5925a FEM: Add ConstraintPressure
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-26 14:17:45 +01:00
Bernd Hahnebach
c6e112b865 FEM: CLOAD, mesh face area is used for surface loads on volume faces 2015-05-26 13:50:38 +02:00
wmayer
e12854af50 + raise error message when trying to mesh without netgen support 2015-05-22 16:15:18 +02:00
wmayer
6e0287ff17 + remove SoFCSelection from ViewProviderGeometryObject 2015-05-20 21:44:27 +02:00
wmayer
cab441cf2a + remove references to SoFCSelection where not needed 2015-05-20 19:24:12 +02:00
jriegel
0ce20ceaaa add shell and beam support to FEM mesh ViewProvider 2015-05-19 21:42:36 +02:00
Przemo Firszt
09652a0f46 FEM: Fix crash on missing unit when editing material second time
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-18 17:09:30 +01:00
wmayer
7eb2ab64cb + FEM: replace set with list to preserve order 2015-05-15 13:48:29 +02:00
Przemo Firszt
ed32dae143 FEM: Fix Von Mises equation
Reported-by: sgrogan and confirmed by drei

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-12 15:58:49 +01:00
wmayer
02a23ba86f + use list of pairs instead of map for getVolumesByFace 2015-05-09 12:02:25 +02:00
wmayer
a538d3c29d + FEM: add a couple of methods to Python interface 2015-05-09 00:15:05 +02:00
wmayer
d3029657f0 + implement FemMesh::getVolumesByFace, replace inner list by tuple 2015-05-08 21:45:13 +02:00
Przemo Firszt
29205f7f4d FEM: Fix invalid CLOAD formatting
Existing code was producing invalid results:

a = 9876543212346789864323456.9543234578986432345678
>>> print "{:.13}".format(repr(a))
9.87654321234
>>> a
9.87654321234679e+24
The new converision should work fine:
>>> print "{:.13E}".format(a)
9.8765432123468E+24

Reported & fixed by ulrich1a
2015-05-08 20:59:32 +02:00
Przemo Firszt
09921c9bb7 FEM: inp file formatting/typos
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-08 20:59:14 +02:00
Przemo Firszt
92124ac084 FEM: Add getccxVolumesByFace and write_face_load functions
getccxVolumesByFace returns std::map<int, int> with ID of volume
and a number of face as per CalculiX definition. The same function is
accessible for python and returns list with the same information, like
this: [[229, 3], [230, 3], [233, 2], [238, 2]]

write_face_load produces something like this in the .inp file:

***********************************************************
** element + CalculiX face + load in [MPa]
** written by write_face_load function
*DLOAD
** Load on face Face2
229,P3,10.0
230,P3,10.0
233,P2,10.0
238,P2,10.0

Optimised by wmayer

Signed-off-by: wmayer
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-08 20:58:59 +02:00
Przemo Firszt
6879373168 FEM: getNodesByVertex should return int not long
Suggested by wmayer

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-08 20:58:43 +02:00
Przemo Firszt
36567695d3 FEM: getNodesByEdge should return int not long
Suggested by wmayer

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-08 20:58:26 +02:00
Przemo Firszt
982976bdc5 FEM: getNodesByFace should return int not long
Suggested by wmayer

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-08 20:58:07 +02:00
Przemo Firszt
d683cba624 FEM: Add comments to .inp file about functions
Adding detailed information which function is responsible for
creating a proticular section of the .inp file should save
some guesswork. An example from the .inp file:

[..]
***********************************************************
** node sets for loads
** written by write_load_node_sets function
*NSET,NSET=FemConstraintForce
1,
3,
[..]

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:30:53 +02:00
Przemo Firszt
eb6a163049 FEM: Use local variable to avoid long strings in write_constraints_force
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:30:35 +02:00
Przemo Firszt
3f1a566d97 FEM: Use local variable to avoid long strings in write_constraints_fixed
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:30:20 +02:00
Przemo Firszt
c35223858f FEM: Use local variable to avoid long strings in write_materials
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:30:05 +02:00
Przemo Firszt
078b1ff9b3 FEM: Use local variable to avoid long strings in write_load_node_sets
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:29:48 +02:00
Przemo Firszt
5d2d386689 FEM: Material name has to be limited to 80 characters for ccx
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:29:30 +02:00
Przemo Firszt
0e61a56082 FEM: Use local variable to avoid long strings in write_fixed_node_sets
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:29:14 +02:00
Przemo Firszt
4170eeba41 FEM: Use local variable to avoid long strings in write_material_element_sets
print material_object['Object'].Name, ':  ', material_object['Object'].Material['Name']

becomes this:

print mat_obj_name, ':  ', mat_name

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:28:57 +02:00
Przemo Firszt
888ad7591c FEM: Rename variables f->elem, inpfile->f
The reason behind that change is that auxiliary variables,
like a file handle, should not be too visible. inpfile was
a good description, but we're handling only one file and there
is no need to use a descriptive variable name for it in every function.
It's enough that is used in write_calculix_input_file

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-01 17:28:39 +02:00
wmayer
859d76faf8 + fixes #0002075: Analysis of FreeCAD by PVS-Studio static analyzer 2015-05-01 16:56:31 +02:00
Przemo Firszt
af7071adb4 FEM: Split inp write_calculix_input_file into functions
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-04-27 21:33:19 +02:00
Przemo Firszt
b59138d784 FEM: Make sure Young's modulus is written in MPa
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-04-27 21:33:18 +02:00
Przemo Firszt
9b5301a004 FEM: Replace invalid General_description with Description
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-04-27 21:33:17 +02:00