Arne Morten Kvarving
28d547c3e4
MxFiniteElement::Jacobian
...
support for a separate geometry basis. checks length
of the passed vector, if greater than number of bases,
use the last entry for the geometry mapping
2023-09-06 09:21:56 +02:00
Arne Morten Kvarving
004d1927ae
ASMuxD(mx): use lrspline instead of geomB in various spots
...
these ops intends to use the integration basis
2023-09-05 12:38:14 +02:00
Arne Morten Kvarving
8762ec1943
ASMu3D::BasisFunctionCache: make use of bezier extraction optional
2023-09-05 11:51:08 +02:00
Arne Morten Kvarving
89f4191139
ASMu3Dmx: remove unused bezierExtractmx
2023-09-05 11:51:08 +02:00
Arne Morten Kvarving
37aba0ca58
ASMuxD(mx): add an if in ASMuxD basis function cache
...
this way we avoid duplication of the class in ASMuxDmx
2023-09-05 11:51:08 +02:00
Arne Morten Kvarving
3240697ec0
fixed: wrong array size
...
this is the main quadrature loop, not the reduced quadrature.
2023-09-05 11:51:08 +02:00
Arne Morten Kvarving
c839e0ac79
ASMu3D::evaluateBasis(2): pass params and vector instead of finite element
2023-09-05 11:51:08 +02:00
Arne Morten Kvarving
dbc2202b5a
ASMu3D::evaluateBasis: pass vector instead of finite element and basis index
2023-09-05 11:51:08 +02:00
Arne Morten Kvarving
82ccdc49e3
ASMu3D::constrainFace
...
use midpoint()
2023-09-05 11:51:08 +02:00
Arne Morten Kvarving
3ad0b872c8
changed: rename ASMmxBase::geoBasis to ASMmxBase::itgBasis
...
more precise as this represents the basis holding the integration elements
2023-09-05 10:12:26 +02:00
Arne Morten Kvarving
6aeefcd0f0
changed: use PETSC_NULLPTR
...
for PETSc < 3.19 we define this to PETSC_NULL.
use of PETSC_NULL causes a deprecation warning in 3.19
2023-09-04 20:02:53 +02:00
Arne Morten Kvarving
9014cc6335
changed: use INSTANTIATE_TEST_SUITE_P
...
INSTANTIATE_TEST_CASE_P causes deprecation warnings with
newer gtest versions
2023-09-04 20:02:53 +02:00
Arne Morten Kvarving
30b7a968d3
bump minimum cmake version to 3.5
...
and put the cmake_minimum_required before project.
current cmake has removed support for < 3.5 and
tosses a warning if the project statement comes
before the cmake_minimum_required statement
2023-09-03 12:04:59 +02:00
Arne Morten Kvarving
ab100c290d
changed: use getBasis in ASMxxD::assembleL2matrices
...
make it clear that we want the integration and projection bases.
2023-09-01 17:20:42 +02:00
Arne Morten Kvarving
ad7ff2b19e
ASMuxDmx: use getBasis(ASM::REFINEMENT_BASIS) where appropriate
2023-09-01 17:20:42 +02:00
Arne Morten Kvarving
d9056a92b2
ASMuxD: use getBasis(ASM::PROJECTION_BASIS) where appropriate
2023-09-01 17:20:42 +02:00
Arne Morten Kvarving
00486b30e8
use getBasis(ASM::PROJECTION) in ASMuxD::refine
...
and restructure a little to make code more readable.
2023-09-01 17:20:42 +02:00
Arne Morten Kvarving
c3bb2447cd
use getBasis(ASM::INTEGRATION_BASIS) in ASMsxDmx::generateFEMTopology()
...
this makes it a bit clearer what is going on.
introduce a lambda to avoid duplicated code and some generic cleanup
2023-09-01 17:20:42 +02:00
Arne Morten Kvarving
f91a62e372
add tests for unstructured ASM write
...
also serves as tests for the getBasis implementation
2023-09-01 15:41:44 +02:00
Arne Morten Kvarving
9cf613cbca
changed: move ASMuSquare and ASMuCube to separate header
...
for reuse like in the structured ASMs tests
2023-09-01 15:41:44 +02:00
Arne Morten Kvarving
76a6139bfc
changed: no reason to override write in ASMuxDmx
...
we can just use the ASMuxD implementation
2023-09-01 15:41:44 +02:00
Arne Morten Kvarving
d57ebd0d0c
add tests for structured ASM write
...
also serves as tests for the getBasis implementation
2023-09-01 14:29:10 +02:00
Arne Morten Kvarving
dc7a2e444a
changed: unify ASM(Cube|Square) and ASMmx(Cube|Square)
...
in particular do not call generateFEMTopology in the latter's
constructor.
2023-09-01 14:29:10 +02:00
Arne Morten Kvarving
53f5d1f830
changed: no reason to override write in ASMsxDmx
...
we can just use the ASMsxD implementation
2023-09-01 14:29:10 +02:00
Arne Morten Kvarving
005f8f24b1
ASMuxDmx: restructure basis establishment
...
make it (almost) similar to code in structured ASMs
2023-09-01 14:09:00 +02:00
Arne Morten Kvarving
809a650bc4
fixed: avoid cloning in ASMsxDmx
...
instead point to the shared ptrs. make sure to null ptrs
before ASMstruct wants to delete them.
2023-09-01 14:09:00 +02:00
Arne Morten Kvarving
fdd7b189b1
use a lambda in ASMu3D::getBoundary1Nodes
...
switch is preferable to ifs
2023-09-01 13:46:14 +02:00
Arne Morten Kvarving
3d6d950474
changed: remove ASMxxD::get(Surface|Volume)
...
use getBasis instead
2023-09-01 08:51:04 +02:00
Arne Morten Kvarving
957af79433
added: extend getBasis method
...
allow obtaining additional bases, not just the FE bases
in particular geometry basis and projection basis.
add an enumeration to make things readable
2023-09-01 08:51:04 +02:00
Arne Morten Kvarving
4abf4c64a7
changed: override separateProjectionBasis in ASMxxD(mx)
...
in preparation for having a separate geometry basis. in that case
we cannot use the geomB pointer to check for equivalence.
also fixes two field mixed formulations with the higher
order basis being the second basis. in that case we are
not projecting on basis 1, but rather on basis 2.
2023-08-29 14:36:03 +02:00
Arne Morten Kvarving
0c2e160d90
rename some variables to make code more readable
2023-08-29 14:34:33 +02:00
Arne Morten Kvarving
9d133d8be1
move refinement basis into ASMLRSpline
2023-08-29 14:05:20 +02:00
Arne Morten Kvarving
b3b3e1fa7a
ASMu2D: make createLRNurbs return a shared_ptr directly
...
no reason to use bare pointers here, they are always put into
a shared_ptr
2023-08-29 14:05:20 +02:00
Arne Morten Kvarving
59ad91c245
rename altProjThreadGroups to proj2ThreadGroups
2023-08-29 14:05:20 +02:00
Arne Morten Kvarving
505d9d9a6c
move projection bases into ASMLRSpline
2023-08-29 14:05:20 +02:00
Arne Morten Kvarving
dce989f1c6
changed: remove proj members in ASMs2D and ASMs3D
...
as these are stored as projB in ASMstruct.
less confusion as there are less member pointers.
2023-08-29 10:52:23 +02:00
Arne Morten Kvarving
086592c2f9
changed: move secondary projection basis into ASMstruct
2023-08-29 10:52:23 +02:00
Arne Morten Kvarving
1d32025671
ASMuxDmx: simplify remapErrors by using elm->midpoint()
2023-08-29 10:12:45 +02:00
Arne Morten Kvarving
bd5609035b
changed: rename ASMLRSpline::geo to geomB
...
to be consistent with ASMstruct. we store it
as a shared_ptr. too many pointers to keep manually
track of. it can be (soon) be a separate object,
one of the FE bases, the projection basis, ...
2023-08-29 09:11:09 +02:00
Knut Morten Okstad
3a4fc9e081
Changed: Second (mostly dummy) argument in read method is removed.
...
Instead, introducing a separate readBasis method.
2023-08-25 16:43:46 +02:00
Arne Morten Kvarving
0a33cedfc3
changed: introduce a method to obtain first node on integration basis
...
use this in ASMsxD::getElementCoordinates. we can then
reuse this method in ASMsxDmx
2023-08-25 12:26:26 +02:00
Arne Morten Kvarving
c0b5911549
changed: introduce a method to obtain last node on integration basis
...
use this in ASMsxD::getParametric[Area|Length|Volume]. we can then
reuse these method in ASMsxDmx
2023-08-25 12:26:26 +02:00
Arne Morten Kvarving
deb2bd53ea
fixed: make sure to always set geoBasis
...
if not we risk getting the wrong setting if we instance
a SIM with e.g. subgrid followed by instancing a SIM with Taylor-Hood.
2023-08-25 11:16:05 +02:00
Arne Morten Kvarving
3e5924ba68
fixed: use correct path
...
these tests were missing when using Apps/CMakeLists.txt
2023-08-24 11:35:00 +02:00
Knut Morten Okstad
bc066b9336
Changed: Unnecessary copying of bfs.N removed.
...
Fixed: Debug print in ASMu2D::integrate().
2023-08-15 11:47:15 +02:00
Arne Morten Kvarving
f2f876c77c
added: BasisFunctionCache in ASMu3Dmx
2023-08-15 11:47:15 +02:00
Arne Morten Kvarving
730fdca306
added: BasisFunctionCache in ASMu3D
2023-08-15 11:47:15 +02:00
Arne Morten Kvarving
2f676bf6b3
added: BasisFunctionCache in ASMu2Dmx
2023-08-15 11:47:15 +02:00
Arne Morten Kvarving
f2924c1cbd
added: BasisFunctionCache in ASMu2D
2023-08-15 11:47:15 +02:00
Arne Morten Kvarving
bffcfa640f
added: BasisFunctionCache in ASMs3DmxLag
2023-08-15 11:47:15 +02:00