Commit Graph

2371 Commits

Author SHA1 Message Date
Knut Morten Okstad
e531d64d6e Added: Output of extraction function value to VTF as element result 2019-05-21 13:20:01 +02:00
Knut Morten Okstad
f08a50ebe9 Added: New virtual method FunctionBase::getScalarValue 2019-05-21 13:20:01 +02:00
Knut Morten Okstad
a174cb39a5 Changed: Removed bool member partitioned, using myElms.empty() instead.
Also moved the thread group generation based on graph partitioning inside
DomainDecomposition::setup where it belongs.
2019-05-21 13:20:01 +02:00
Knut Morten Okstad
bac74e1d73 Fixed: Sign error in the tangent direction vector.
Changed: Relate extraction function value to local axis directions.
2019-05-21 13:20:01 +02:00
Knut Morten Okstad
1f50a8116a Changed: Negative weighting factor means take max value instead 2019-05-21 13:20:01 +02:00
Knut Morten Okstad
5857ea71cc Changed: bool return value for virtual method FunctionBase::initPatch.
Optimization: Perform L2-projection of the extraction functions only
for the patch where the function has support.
2019-05-21 13:20:01 +02:00
Knut Morten Okstad
7a46162cdc Added: Overloaded L2projection method projecting a list of functions in
one go. This is far much more efficient than projecting them one by one.
Changed: Always print patch heading in ASMbase::printNodes, no argument.
2019-05-21 13:20:01 +02:00
Knut Morten Okstad
6f2adc8aea Added: Use a weighted sum of extraction functions in the dual problem RHS 2019-05-21 13:20:01 +02:00
Knut Morten Okstad
88ab553dea Added: Output the dual-weighted error indicators to VTF
and print out the associated global error estimate
2019-05-21 13:20:01 +02:00
Knut Morten Okstad
430d9c721f Changed: SIMargsBase::adap is now a char to facilitate integer values 2019-05-21 13:20:01 +02:00
Knut Morten Okstad
75b4689faf Changed: Reduce the depth of the extraction function after refinement 2019-05-21 13:20:01 +02:00
Knut Morten Okstad
33344bc94a Added: Output of dual solution quantities to VTF 2019-05-21 13:20:01 +02:00
Knut Morten Okstad
aeae2faad1 Changed: Use a lambda function in assembleSystem to reduce code duplication.
Changed: solveMatrixSystem is renamed to solveSystem (overloaded method).
Added: Support for dual solution field, for goal-oriented error estimates.
2019-05-21 13:20:01 +02:00
Knut Morten Okstad
625d24c5a9 Added: Support for multiple extraction functions 2019-05-21 13:19:33 +02:00
Knut Morten Okstad
28fb78bbc4 Changed: Use a lambda function in solutionNorms to reduce code duplication.
Added: L2-projection of an explicit extraction function for doing
variationally consistent postprocessing during norm integration.
2019-05-21 13:07:33 +02:00
Knut Morten Okstad
6cfa38119e Added: Convenience method initElement1 which extract the first primary
solution vector only, in the event of more than one (used by sub-classes).
Added: Virtual method to return nodal vector of extraction function values.
2019-05-21 13:07:33 +02:00
Knut Morten Okstad
4ffdb4ffc2 Added: Class for dual solution fields over a rectangular sub-domain.
Added: Virtual method to query whether a spatial point is in the domain.
2019-05-21 13:07:33 +02:00
Arne Morten Kvarving
638e057cb3 added: support output of explicit function to VTF 2019-05-21 13:05:08 +02:00
Arne Morten Kvarving
42493fcf5a changed: group parameters in arrays 2019-05-21 12:58:29 +02:00
Knut Morten Okstad
08b0695d2c Fixed: Account for NURBS weights in ASMu2D::getNodalCoordinates also 2019-05-17 17:04:24 +02:00
Knut Morten Okstad
ea723a93c9 Fixed: Calculate updated coordinates when needed in ASMu2D::evalSolution 2019-05-14 10:04:36 +02:00
Knut Morten Okstad
186b438604 Added: Method readModel which also includes profiling 2019-05-14 10:04:36 +02:00
Knut Morten Okstad
cfd71df76e Changed: Split AdaptiveSIM into two classes, where the new AdaptiveSetup
contains input parameters and methods for setting up the refinement data.
The actual driver routines are retained in AdaptiveSIM. This to facilitate
reuse of refinement procedures in AdaptiveSetup for non-stationary solvers.
2019-05-14 10:03:21 +02:00
Knut Morten Okstad
585f5de460 Added: Specify file prefix on the store_mesh and store_errors xml-tags.
Changed: Moved mesh output away from refine methods for more flexibility.
Changed: Removed unused member symmetry in class AdaptiveSIM.
2019-05-12 15:32:37 +02:00
Knut Morten Okstad
b773717b5a Added: Write refined mesh to VTF on failure 2019-05-12 15:32:37 +02:00
Knut Morten Okstad
70f8f2914f Changed: Write deformation if negative psolComps and pvecName is not null.
Fixed: One incorrect return statement (false --> -3) in writeGlvS1,
and cleaned away some unneccessary checks on the haveXsol variable.
Added: Lambda function for creating VTF file name based on process ID.
2019-05-12 15:30:23 +02:00
Knut Morten Okstad
4dbd7a4fe0 Added: Matrix constructors using an external vector as internal storage 2019-05-12 14:38:12 +02:00
Arne Morten Kvarving
0af31d5923 added: support saving/reading mesh partitioning to/from file 2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
4b35c00f0d added: support for partitioning based parallel computations
automatically partition mesh and distribute in parallel.
this is rather suboptimal in many ways, but still useful.
2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
41ce8928de added: zoltan support to build system 2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
84fa0ce0c0 changed: allow obtaining G2LEQ for block 0 2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
9ed83a6ef1 added: method to filter threadgroups through a white list 2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
de9ba8912b changed: default preconditioner to 'asm' in parallel simulations 2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
695e7cfefd added: SparseMatrix helper to calculate CSR representation 2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
07046e6dfe added: SIMinput::getElmConnectivities
calculates element connectivities for multipatch models
2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
381c761411 changed: move the orientation iteration helper class to DomainDecomposition scope
for reuse purposes
2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
9aeac072d5 added: ASMbase method to obtain elements on a boundary 2019-05-08 12:01:00 +02:00
Arne Morten Kvarving
4787a9e490 added: ASMbase method to obtain element-element connectivities 2019-05-08 12:01:00 +02:00
Knut Morten Okstad
730c5485d0 Fixed: The periodicities must be parsed after refine/raiseorder.
Changed: Set strip-direction according to periodicity for multi-threading.
2019-05-07 11:42:34 +02:00
Knut Morten Okstad
4ef8368fb4 Added: Unit test with periodic BC's and uniform refinement.
Added: Method SIMadmin::loadXML (for unit testing only).
Changed: Inline the boundary_nodes.xinp and input.xinp files.
2019-05-07 06:12:04 +02:00
Knut Morten Okstad
24f8b3d7d1 Fixed: ASMu2Dnurbs now inherits ASMu2DC1.
Such that it also can be used for clamped problems.
2019-05-06 07:37:05 +02:00
Knut Morten Okstad
8732185797 Fixed: Don't increment part ID for adaptive grids.
This also fixes the annoying vanishing meshlines in GLview
when using the slide bar to go from one step to the next.
2019-05-03 06:51:43 +02:00
Knut Morten Okstad
94389163e5 Fixed: Undo the fix in e69c100b17
as this apparently causes the issue OPM/IFEM#347.
Revisit this later for a proper fix.
2019-04-23 21:02:51 +02:00
Arne Morten Kvarving
633cf80ff8 Changed: Make sure we generate IDs for LR objects.
This changed in the recently update lrspline library.
Now has to be done manually by user code to avoid multi-threading issues.
2019-04-15 07:38:54 +02:00
Knut Morten Okstad
44f7cb20dc Added: Optionally collapse degenerated faces into an edge or node.
Added: Unit tests for the collapse methods for ASMs2D and ASMs3D.
Changed: Removed the basis argument in the constrainNode method
in ASMs3D to be compliant with the ASMs2D method (they are not
in use for mixed problems). Also some minor doxy corrections.
Changed: Reset basis to 1 if zero in all constrain-methods
for the non-mixed ASM-classes, for consistency.
2019-04-09 09:55:51 +02:00
Knut Morten Okstad
717b32cb48 Fixed: Number of boundary integration points when unequal order.
Changed: Using utl::findIndex when searching global indices.
2019-04-02 21:36:58 +02:00
Knut Morten Okstad
584ed7fbf7 Added: Subclass ASMu2DC1 with support for clamped boundary conditions 2019-04-02 13:09:56 +02:00
Knut Morten Okstad
3c9529c072 Changed: Simplified the boundary nodes extraction a bit.
Always use getBoundaryNodes method and made getEdgeNodes private.
Think there were some small undetected errors also
(local vs. global node numbers).
2019-04-02 09:26:55 +02:00
Knut Morten Okstad
592b725e24 Changed: Let the DirichletEdge constructor initialize its corner member.
Also let the MLGN member account for the basis offset in case of mixed,
such that the basis index itself is not needed as a DirichleEdge member.
2019-04-02 06:30:33 +02:00
Knut Morten Okstad
048291d2af Added: Utility method utl::findIndex 2019-04-01 21:51:51 +02:00