Commit Graph

2861 Commits

Author SHA1 Message Date
Arne Morten Kvarving
37d33f0648 fixed: set parameters when projecting function
necessary when using a fieldfunction
2022-04-26 12:45:04 +02:00
Arne Morten Kvarving
e3d3b526e8 fixed: clear additional functions in clearProperties
this is necessary to not register multiple functions if
used in adaptive simulations
2022-04-26 11:39:18 +02:00
Arne Morten Kvarving
cadcefb454 fixed: memory leak in mixed LR integrands
tensorspline was not cleared up after LR bases
had been established
2022-04-26 11:37:34 +02:00
Arne Morten Kvarving
ddf260795f changed: add 'symmetric' as an alias for 'symmetrized' beta type 2022-04-22 12:15:39 +02:00
Arne Morten Kvarving
71fa5975da fixed: check number of components in function
in particular for mixed integrands using anasol boundary conditions
nf can be greater than the number of components in the function. this is
because nf is set to the total number of fields and not the number
of fields on a single basis
2022-04-22 10:57:33 +02:00
Arne Morten Kvarving
e80aef161b re-enable multithreaded mixed 3D assembly
the problems leading to it being disabled should have been fixed now
2022-04-20 12:20:10 +02:00
Arne Morten Kvarving
673eec21c7 added: more field function types
gradient and laplacian of scalar and vectorial fields.
this will be used for deriving source functions for simulations
where we use another simulation result as "exact" solution
2022-04-20 12:19:20 +02:00
Arne Morten Kvarving
02de121ca3 added: ability to use a fixed time level in FieldFunctions 2022-04-20 12:19:20 +02:00
Arne Morten Kvarving
c5c43beca2 fixed/add: hessianFE in SplineFields
previously the derivatives on the reference domain was returned
2022-04-20 12:19:20 +02:00
Arne Morten Kvarving
9bfe8af84e added: support FieldFunctions for mixed spline fields
If no dash is found in the basis name, we assume the field
names given are on separate bases, one per basis

this is used to instance fieldfunctions for div-compatible
solution fields
2022-04-20 12:19:20 +02:00
Arne Morten Kvarving
3dc01f07a4 added: implement valueCoor in mixed spline fields 2022-04-20 12:19:20 +02:00
Arne Morten Kvarving
e479951031 added: ability to read mixed bases from streams 2022-04-20 12:19:20 +02:00
Knut Morten Okstad
421fbdf198 Changed: Enable MathJax for equation rendering 2022-03-08 15:31:27 +01:00
Arne Morten Kvarving
bd2b2b88f6 add convection/advection variants for div-compatible 2022-03-03 10:42:56 +01:00
Arne Morten Kvarving
b467fa1ca2 added: skewsymmetric to EqualOrderOperators::Advection 2022-03-03 10:42:56 +01:00
Knut Morten Okstad
d015090e9f Fixed: Calculation of reaction and interface forces.
Boundary contributions due to in-homogeneous neumann conditions were missing
due to the flawed check on the presence of myEqSys->getVector().
We now rely on the hasBoundaryTerms() method of the integrand instead.
Use property type OTHER when internal forces are calculated,
such that dirichlet boundaries in the same patch that does not belong
to the interface we are calculating interface forces on are skipped.
2022-03-02 12:30:16 +01:00
Knut Morten Okstad
58e5969947 Added: Convenience method SAM::printVector (for debugging) 2022-03-02 12:30:16 +01:00
Knut Morten Okstad
7736de71ca Added: SIMgeneric::getInterfaceForces() 2022-03-02 12:30:16 +01:00
Knut Morten Okstad
88ee21ffe0 Changed: Use SIMbase::getBoundaryNodes in SIM::initBoundaryNodeMap() 2022-03-02 12:30:16 +01:00
Knut Morten Okstad
d984430fca Added: Extract internal forces from ReactionsOnly integral 2022-03-02 12:30:16 +01:00
Knut Morten Okstad
a5fd95b0ed Fixed: Don't flag Neumann-order or local tangent direction
for edge boundaries in 3D through the Property::lindx member.
It is not needed and also makes it easier to address volume
edges (in range 1 to 12) correctly without the mod'ing.
2022-03-02 11:53:07 +01:00
Knut Morten Okstad
83ae2c73fa Fixed: Ensure unique boundary nodes nodes also for ldim=nsd and ldim=4.
Added: Also consider 1D boundaries (edges) in 3D and vertices in 2D.
2022-03-02 11:53:07 +01:00
Knut Morten Okstad
3712524a0e Replaced virtual method getEdge() by getBoundary1Nodes()
with a similar interface as getBoundaryNodes()
2022-03-02 11:53:07 +01:00
Knut Morten Okstad
5c3e3d2bb2 Fixed: The *sol vector is considered the control point values of the
projected secondary solution if the description field equals "projected",
and the results field contains DataExporter::SECONDARY.
2022-03-02 11:42:20 +01:00
Arne Morten Kvarving
a85e46a147 added: add ConvectionForm argument to CompatibleOperators::Advection
currently only CONVECTIVE is implemented
2022-02-18 15:00:51 +01:00
Arne Morten Kvarving
7787ed15d9 fixed: these are pointers
use nullptr, not 0
2022-02-17 09:19:25 +01:00
Arne Morten Kvarving
2e6002d024 fixed: we have to set the option here to avoid trouble
if we have previously reused the matrix factorization,
the FACTORED value is stored. this leads to segfaults.
we now properly flag that we only want to reuse the
sparsity pattern
2022-02-17 09:19:25 +01:00
Arne Morten Kvarving
ab6d03b141 added: extend element matrix cache support to mixed 2022-02-17 08:45:06 +01:00
Arne Morten Kvarving
a3555e8942 changed: do not resize the newton matrix up front
this way we can use its non-emptyness to signal that
it has already been assembled.
2022-02-16 22:44:10 +01:00
Arne Morten Kvarving
bbc3333380 changed: suppress all output in RK solver if not standalone 2022-02-16 11:52:57 +01:00
Arne Morten Kvarving
5618e4b000 changed: print iteration history in NonLinSIM even at msgLevel -1
allows suppressing norm and solution summary output, while still
keeping the iteration history. useful in split simulators
such as Chorin
2022-02-14 07:00:47 +01:00
Arne Morten Kvarving
ffe5499917 fixed: wrong variable used in 3D mixed tensor spline fields 2022-02-11 15:32:38 +01:00
Arne Morten Kvarving
22d7167c7d fixed: we need to free the MPI_Comms even in serial 2022-02-09 12:52:53 +01:00
Arne Morten Kvarving
9f936b401e EqualOrderOperators: use outer_product in Convection 2022-01-27 16:28:21 +01:00
Arne Morten Kvarving
17cbd59390 EqualOrderOperators: use outer_product in Advection 2022-01-27 16:28:21 +01:00
Arne Morten Kvarving
4061249593 fixed: wrong index in CompatibleOperators::Advection 2022-01-27 14:53:46 +01:00
Arne Morten Kvarving
ec6b692c3a fixed: also put multiplier in block 2 with component based blocks 2022-01-27 11:44:00 +01:00
Arne Morten Kvarving
a2cf0932f1 Print number of local equations in each block 2022-01-27 11:44:00 +01:00
Arne Morten Kvarving
a4b38fff9d added: support for Integrand::AVERAGE flag in LR integrands 2022-01-27 11:15:12 +01:00
Knut Morten Okstad
4a347ed412 Added: Optional print of external load resultant.
Added: Debug print of nodal reaction forces.
Changed: Better property mapping outprint.
2022-01-26 17:01:33 +01:00
Arne Morten Kvarving
795bb64b9d fixed: element index should be 0 based 2022-01-26 13:35:40 +01:00
Arne Morten Kvarving
4d4ce8e147 fixed: lagrange multiplier with single basis LR 2022-01-26 13:35:40 +01:00
Arne Morten Kvarving
4633d4dc89 fixed: forgotten condition in 3D subgrid with H mesh projection 2021-12-01 15:23:30 +01:00
Knut Morten Okstad
ea0ad9a4fe Changed: Use std::vector<double> as reaction force container 2021-11-20 10:56:32 +01:00
Arne Morten Kvarving
f4d4c7247a changed: INT type is now INTERNAL 2021-11-17 15:30:26 +01:00
Arne Morten Kvarving
b188724ce8 changed: make less noise if system tinyxml is not found 2021-11-17 14:43:17 +01:00
Arne Morten Kvarving
d8d4d40d8f fixed: projection basis for XXX_CONT_RAISE_BASIS2 2021-10-29 10:59:43 +02:00
Arne Morten Kvarving
7cfd2470eb fixed: typo, cycles, not cyles 2021-10-29 10:32:47 +02:00
Knut Morten Okstad
22952809fa Changed: The node renumbering is moved to a separate method,
since this also have to done by the new readTopologyOnly method
2021-10-27 11:28:18 +02:00
Knut Morten Okstad
fc57eed844 Added: public method SIMinput::readTopologyOnly() 2021-10-27 11:20:41 +02:00