A center of gravity and mass extractor for interactions
has been implemented in Metafor.
The synthax is the same as other extractors:
valuesmanager = metafor.getValuesManager() extractor1 = InteractionGravityCenterAndMassValueExtractor(interaction) valuesmanager.add(nbr, extractor1, name = "TheNameYouWant") # manages extraction, result storage...
At each archiving step the extractor fills a four columns text file, where columns 1-3 contain x, y, and z coordinates of the center of gravity respectively, and column 4 contains the value of the mass.
MASS_DENSITY
different from zero, otherwise a FATAL_ERROR
is raised.
For the moment, a gravity center and mass extractor has been added in apps/imp/bounce.py
and for all the test cases contained in apps/monosMaterials2
and mtThixo/tests/monoMaterials2
run via apps/toolbox/materialTesting.py
. A density different from zero has been defined where needed.
NortonHoffHypoMaterial::initPrmat()
function, Material::initPrmat()
was called instead of MechanicalMaterial::initPrmat()
, so that the density was not initialized for these materials. The bug has been corrected and this justifies the large amount of diffs in the tests involving Norton-Hoff materials between the present commit and the previous versions of Metafor.
[a] oo_meta/mtFEM/extractors/InteractionGravityCenterAndMassValueExtractor.h [a] oo_meta/mtFEM/extractors/InteractionGravityCenterAndMassValueExtractor.cpp [m] apps/imp/bounce.py [m] apps/toolbox/materialTesting.py [m] apps/monoMaterials2/EvpAnisoDamageAlvBoneRemod.py [m] apps/monoMaterials2/EvpAnisoDamageBoneRemod.py [m] apps/monoMaterials2/EvpAnisoDamageDummy.py [m] apps/monoMaterials2/EvpAnisoDamageLemaitre.py [m] apps/monoMaterials2/EvpIsoDamageAlvBoneRemod2.py [m] apps/monoMaterials2/EvpIsoDamageBoneRemod.py [m] apps/monoMaterials2/NortonHoff.py [m] mtThixo/tests/monoMaterials2/ThixoEnhanced.py [m] mtThixo/tests/monoMaterials2/ThixoEquivalentNortonHoff.py [m] mtThixo/tests/monoMaterials2/ThixoMicroMacro.py [m] mtThixo/tests/monoMaterials2/ThixoNortonHoff.py