Commit Graph

1966 Commits

Author SHA1 Message Date
Kjetil Andre Johannessen
df22337ed9 Don't print multithread LR assembly colouring details to log 2017-10-18 14:24:19 +02:00
Arne Morten Kvarving
5a8e3011f2 added: support for solving system directly from elem map using PETSc 2017-10-18 10:55:00 +02:00
Arne Morten Kvarving
01b699dc23 added: support for using PETSc solvers for global L2 projection 2017-10-18 10:55:00 +02:00
Arne Morten Kvarving
2a559357c9 fixed: add some more segfault protection
also avoid leaks on parsing failure
2017-10-17 10:41:23 +02:00
Arne Morten Kvarving
5446a0a177 add support for sub-grid mixed elements
this is C^{p+1}_p / C^p_{p-1}, but where the first basis has
an additional subdivision of each element.

this is an inf-sup stable basis for Stokes
2017-10-13 14:49:09 +02:00
Arne Morten Kvarving
75317b18f2 added: reuse of symbolic factorization for umfpack solver 2017-10-12 11:23:21 +02:00
Arne Morten Kvarving
d3c22a6fa2 fixed: allow setting ilu_fill_level for non-AMG driven ilu pcs
closes #193
2017-10-05 14:34:42 +02:00
Arne Morten Kvarving
ee1967b2ad fixed: allow #asol != #secsol 2017-10-05 13:58:44 +02:00
Arne Morten Kvarving
824c66a726 fixed: do not assume dim(solution) is the same as number of boundary conditions
assumption breaks for e.g. Stokes where we have a pressure field in addition
2017-10-05 13:58:44 +02:00
Arne Morten Kvarving
2c64198375 fixed: allow specifying the number of components in evalSolution
this is necessary for correct output of secondary solutions to VTF
for mixed formulations. previously it assumed this was equal
to the number of primary solution fields, which is incorrect.
2017-10-05 13:58:44 +02:00
Arne Morten Kvarving
dc48750a66 add hook for post-processing element norms
use this for entries which are sums norms
and where you have to do the summation after the
square-root has been applied.
2017-10-05 13:58:44 +02:00
Arne Morten Kvarving
9b13301cae increase maximum number of norms to 30 2017-10-05 13:58:44 +02:00
Arne Morten Kvarving
8a6382155d changed: check if an empty secondary solution is associated with residual norms
if so, count the norm entries.

also add a flag for externally provided projections in the norm class.
this is necessary for applications where the projection is performed
on a different basis than than the first finite element basis. in particular,
this is used with subgrid and taylor-hood discretizations of stokes
2017-10-05 13:58:44 +02:00
Arne Morten Kvarving
298f15af78 fixed: lower-dimension connections is not an error
just ignore them in serial
2017-10-05 11:30:25 +02:00
Knut Morten Okstad
e56e247492 Added: Implementation of the method to interpolate a function over a domain,
defaults to L2-projection for ASMu2D and ASMu3D.
Changed: Merged to two edgeL2projection methods for ASMu2D into one method
using the FunctionBase interface. Also, don't use the FiniteElement class
in the L2-projection of functions on boundaries, since no Integrand here.
Other changes are cosmetics, doxygen fixes, etc.
2017-10-04 13:52:16 +02:00
Knut Morten Okstad
dcb433e1d0 Changed: Not likely you have log and vtf-files in your working directory
of this repository after the out-splitting of the Apps in separate repos.
Therefore removed. Also removed incomplete ignore of app-directories.
2017-10-04 13:52:16 +02:00
Arne Morten Kvarving
20a1ff8ec6 update README with umfpack info 2017-10-04 08:50:36 +02:00
Kjetil Andre Johannessen
d3bab37cd1 Bugfix: 3D-LR projection (CGL2) bezier evaluation was wrong 2017-09-29 11:22:27 +02:00
Arne Morten Kvarving
9329ac73f6 add umfpack solver to SparseMatrix 2017-09-28 22:10:56 +02:00
Arne Morten Kvarving
5c9bac9cf9 fixed: initial guess mess with preonly ksp in PETSc (lu solves) 2017-09-28 22:10:56 +02:00
Arne Morten Kvarving
20ecda0d55 changed: print CFL for negative maxCFL value
this allows to print but not apply time stepping control
2017-09-22 11:48:17 +02:00
Knut Morten Okstad
27d4538482 Added: Dump of solution matrix/vectors of several steps to the same file.
Changed: Moved the myInterfaces member to class SIMinput (only used there).
2017-09-20 08:41:29 +02:00
Knut Morten Okstad
dec5d33e3f Fixed: Seems like the unordered_map container sorts after all (STL bug?)
So replace by a vector of pairs instead.
2017-09-16 08:18:35 +02:00
Knut Morten Okstad
5f73052452 Added: unit test for adding explicit node sets 2017-09-16 08:16:30 +02:00
Knut Morten Okstad
7ef84d2350 Changed: Undo of 02d84c07e2
It feels unneccassary and confusing with two versions of solveStep
and the need for the using statement when one of them is overriden.
2017-09-12 17:05:40 +02:00
Arne Morten Kvarving
5001025d2a changed: use bezier extraction in evaluation of secondary solution. 2017-09-08 11:13:08 +02:00
Arne Morten Kvarving
50bc13f17d disable multithreading for LR splines
currently broken
2017-09-07 14:10:03 +02:00
Knut Morten Okstad
0aff9324e7 Fixed: Copy the norm prefixes to avoid valgrind complaint 2017-09-01 09:11:42 +02:00
Knut Morten Okstad
af7d7b6728 Added: Specification of nodes in a node set on the input file.
Fixed: Use a unordered_map instead of a map for the node sets,
to avoid that the list is sorted with respect to the names, which
would invalidate the set indices returned by the getNodeSetIdx method.
2017-08-29 21:27:09 +02:00
Knut Morten Okstad
e19d34bbd7 Changed: utl::parseIntegers can now also read a list of integers.
Changed: Using EXPECT instead of ASSERT in the test programs, and
put the xml input in a character string instead of a file.
2017-08-29 21:27:09 +02:00
Knut Morten Okstad
d181ccb048 Fixed: Set nNod correctly for multi-patch models with shared grids 2017-08-29 21:27:09 +02:00
Knut Morten Okstad
ed1bd4ef5e Fixed: SIMbase::getBoundaryNodes now works also for explicit node sets 2017-08-29 21:27:08 +02:00
Knut Morten Okstad
fcf078e8a6 Added: New method ThreadGroups::oneGroup in case of no multi-threading 2017-08-29 21:26:54 +02:00
Knut Morten Okstad
d21cad9774 Added: 2D Lagrange sub-class for FE model from Matlab file 2017-08-29 21:15:11 +02:00
Knut Morten Okstad
b14cec6b63 Added: Protected method setCoord to assign nodal coordinates.
Changed: Don't set fe.u, fe.v and fe.w if no spline parameters available,
and use iel when calculating fe.iGp such that it also works spline-less.
2017-08-29 21:15:11 +02:00
Knut Morten Okstad
de1d029f2b Added: New virtual methods getNodeSetIdx and getNodeSet.
Also added a method to prescribe/fix a list of nodes.
2017-08-29 21:15:11 +02:00
Knut Morten Okstad
87c6c2ccb8 Added: Member variables for polynomial order.
Fixed: One evalSolution signature for the Lagrange ASMs.
2017-08-29 21:15:11 +02:00
Knut Morten Okstad
021c205a63 Fixed: Avoid adding MPC for nodes with identical node numbers.
It resulted in infinite recursion and stack overflow.
Changed: Use range-based for loops where more appropriate.
2017-08-29 21:08:03 +02:00
Knut Morten Okstad
d5948ec5d6 Added: Optionally collapse degenerated edges into a single point/node 2017-08-29 21:08:03 +02:00
Kjetil Andre Johannessen
f046ca76bd bumped LRSpline library for multipatch connections 2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
6a85046c8c added: multipatch refinement (2D and 3D)
fixed: we have to refine the mesh with the highest order

we have to remap the element wise errors from the geometry mesh
elements to the refinement mesh basis functions.
2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
364ef7c56b fixed: only use MNPC for first basis for injecting projected solution into integrands 2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
e630986c53 changes needed to make projection work with mixed
- only use nodes on first basis where relevant
- use extractPatchSolution instead of directly calling
  extractNodeVec to tap into additional MADOF functionality
2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
76e26e68bd changed: flag for whether or not to include other bases in additional MADOFs
recovered quantities are only using basis1 so we need to be able to
create a MADOF which holds dummies for the other bases.

also clear addMADOFs in SIMbase::clear() to make it work for adaptive simulations
2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
88fe4728a0 fix assembleL2Matrices in ASMu2Dmx 2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
ddf1511e88 implement ASMu2Dmx::evalSolution 2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
dc53797f66 added: hessian support in ASMu2Dmx 2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
61a84b33c3 fixed: store element size in FiniteElement for various ASMs 2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
b1e6ba8cbb changed: keep all topology information
not just those to off-process patches. needed for multi-patch
(adaptive) refinements
2017-08-29 10:22:33 +02:00
Arne Morten Kvarving
e7db893c1f fixed: check for nullptr before dereferencing 2017-08-29 09:11:02 +02:00