I am a bit puzzled by the post-processing option for stress and strain vectors, both in the Pipeline (possibility to display X,Y,Z or magnitude) or from the importCcxFrdResult.py
Code: Select all
# we found a stress line in the frd file
if mode_stress_found and (line[1:3] == "-1"):
elem = int(line[4:13])
stress_1 = float(line[13:25])
stress_2 = float(line[25:37])
stress_3 = float(line[37:49])
stress_4 = float(line[49:61])
stress_5 = float(line[61:73])
stress_6 = float(line[73:85])
mode_stress[elem] = (stress_1, stress_2, stress_3, stress_4, stress_5, stress_6)
mode_stressv[elem] = FreeCAD.Vector(stress_1, stress_2, stress_3)
if line[5:13] == "TOSTRAIN":
mode_strain_found = True
# we found a strain line in the frd file
if mode_strain_found and (line[1:3] == "-1"):
elem = int(line[4:13])
strain_1 = float(line[13:25])
strain_2 = float(line[25:37])
strain_3 = float(line[37:49])
# strain_4 = float(line[49:61]) #Not used in vector
# strain_5 = float(line[61:73])
# strain_6 = float(line[73:85])
mode_strain[elem] = FreeCAD.Vector(strain_1, strain_2, strain_3)
These are tensors and we should have the possibility to display all the components (including shear components). They become vectors only when projected on a particular material plane. If am not mistaken, there is no such plane anyway which would lead to a stress vector composed of Sxx, Syy and Szz (except if the shear components are zero and we project on the plane which normal is 1,1,1).
I fear there is some mistake here but maybe I have completely misunderstood the meaning of this. Could someone highlight me?
Moreover, the stress tensor is read by the python script but apparently there is no direct way to post-process it.
Thanks,