SONOLET Aymeric [Mon, 27 May 2024 06:20:33 +0000 (08:20 +0200)]
feat: new crackAlong method
This new method is a more powerfull version of the
buildInnerBoundariesAlongM1Group method because it naturally handle non
connex and complex M1 groups
wip: fix cycling over nodal connectivity
fix shared_ptr<set<int>> allocation
wip: no more memleak !
TODO: for now this method only treat the mesh at level 0. The mesh at
level -1 and the groups lying on it should be taken care of.
wip: Duplicate faces inplace and replace old node number with new ones
wip: removing useless shared_ptr, adding doc
wip: moving duplicateFaces to CrackAlgo.cxx
wip: refactor CrackAlgo and treat elements families
missing node families
feat: functional new duplicateFaces method
fix: changing API and preparing methods for test
feat: separate tests on crackAlong method
wip: using M1 and not Mf
fix: case when cell has no neighbor
feat: test mesh at level -1
This test checks that the crack mesh has twice as many cells than the
starting crack mesh, and that they are both equivalent after merging the
nodes.
wip: fixing connectivity of faces which are not duplicated
fix: manage connectivity of m1 elements touching crack
wip: add python tests
Still figuring out why using M1 non connex group erease the families at lev -2
fix: crackAlong exceptions with boolean param
A boolean is added to change the method behavior in the case when a face
is duplicated but not modified (there is no real separation between
volumes)
feat: new tests and OpenCrack binding
fix: Copy family at lev0 and set them back
Because suprisingly they tend to disapear.
refactor: OpenCrack -> openCrack
fix: remove french comments, better use of stl
refactor: better documentation, less auto, more const
karadaniz [Mon, 25 Mar 2024 15:16:09 +0000 (16:16 +0100)]
Fix spns #40523 export .mesh is too slow. Extract only unique family ids before using them in to iterate over cells.
And ignore operation on fields if no field exists to avoid crash when writing .mesh file
abn [Wed, 7 Feb 2024 10:09:10 +0000 (11:09 +0100)]
[TetraIntersect] Settting TransformedTriangle::THRESHOLD to 100
+ see previous commit : we can not keep 20 because of P1P1 intersector which uses
barycentric computation. A small threshold produces sometimes more
intersection points, which disturbs the (improper) barycentric
computation.
abn [Thu, 25 Jan 2024 19:37:39 +0000 (20:37 +0100)]
[TetraIntersec] Several bug fixes in Grandy's implementation
+ triple product inconsistency was not properly detected (now using original deltas from douple prod computation)
+ f/F factor set to 20 (not 500) as in Grandy's article -> (will be set to 100, see next commit)
+ epsilonEqual used when necessary: when it provides more points in polygon A or B (risk is completely missing a point in polygon!)
+ better handling of degenerated case where PQR triangle is in h=0
plane, or when P,Q or R close to a tet corner
+ fixed surface-edge intersection test: triple product equality (and zeroing) must be checked with care
+ using 'long double' is not necessary -> double are enough
abn [Thu, 7 Dec 2023 20:03:47 +0000 (21:03 +0100)]
[OverlapDEC] Bug fix for transfer of multi-compo field
+ adding tests illustrating transfer of several fields
+ doc and minor fix in workSharing algo (was improperly identifying less loaded proc -> should not impact result, just balancing)
+ C++ style loops
+ more debug info
Nabil Ghodbane [Tue, 21 Mar 2023 12:14:09 +0000 (13:14 +0100)]
Fix MEDCoupling tests currently failing on Windows OS:
1/ fix import in python scripts
2/ fix PYTHONPATH search path in CTestTestfileInstall.cmake consistently for Windows
3/ Implement Linux which equivalent command on Windows
Taking into account code review as discussed in this pull request: https://codev-tuleap.cea.fr/plugins/git/?action=pull-requests&repo_id=146&group_id=116#/pull-requests/2456/overview