Commit Graph

2006 Commits

Author SHA1 Message Date
Arne Morten Kvarving
b4b79d2d59 changed: add orient flag to getEdge | getBoundaryNodes
we need to apply the appropriate sort inside the calls for
LR splines as the sorting happens based on basis functions
and not just node numbers.
2017-08-14 13:15:57 +02:00
Arne Morten Kvarving
022678ccef add global L2 projection for mixed 2D tensor splines 2017-08-14 09:13:00 +02:00
Arne Morten Kvarving
ef050419ec add storemesh with mixed 2017-08-11 14:05:28 +02:00
Kjetil Andre Johannessen
3f72f87617 ASMu3D: 1-based indexing in function signatures (fixes bug in 3D
recovery)
2017-08-11 11:48:12 +02:00
Arne Morten Kvarving
0d40685136 avoid reusing variable name 2017-08-10 14:23:38 +02:00
Arne Morten Kvarving
bf60423ad9 fix ASMu3D::evalSolution and ASMu3D::updateDirichlet for multi-patch
also unify ASMu3D and ASMu2D code a little. note the first
also requires an updated libLRSpline
2017-08-10 14:23:38 +02:00
Arne Morten Kvarving
66a7ef32fd add LR field classes 2017-08-08 11:43:40 +02:00
Arne Morten Kvarving
2395d331e2 initial support for mixed 3D LR assembly 2017-08-07 15:32:33 +02:00
Arne Morten Kvarving
86e1b35321 added: L2-projected non-homogenous dirichlet boundary conditions for LR-b splines 2017-08-07 13:52:25 +02:00
Knut Morten Okstad
fd1ddc87fe Added: New method AdaptiveSIM::setAdaptationNorm which defines both the
adaptor and adNorm members, alternative to reading them from input file.
Changed: Made SIMSolverAdap::aSim protected to enable sub-class access.
2017-06-22 07:34:46 +02:00
Knut Morten Okstad
7fd221f9e1 Added: Option to specify a pure residual norm group (enum value NONE).
No secondary solution projection will be performed for this group, but
we still can use the framework for error norm calculation and output,
as well as the adaptive refinement.
2017-06-22 07:34:23 +02:00
Knut Morten Okstad
8613b80616 Added: virtual method SIMoutput::getReferenceNorm returning the reference
energy norm to be used in adaptive refinements. App-specific sub-classes
may override this method if more norm quantities are available.
Added: virtual method SIMoutput::printNormGroup, which can be implemented
by app-specific sub-classes to print global norms in adaptive simulations.
Changed: Moved the printNorms method from SIMbase to SIMoutput.
Fixed: Use the adNorm variable instead of hard-coded indices when
calculating global norm quantities for printing.
2017-06-22 07:33:00 +02:00
Knut Morten Okstad
c69da983b7 Fixed: Account for that the IFEM package summary has moved 2017-06-20 02:49:38 +02:00
Knut Morten Okstad
a3b72a77fb Added: Projection of analytical secondary solution 2017-06-20 02:49:38 +02:00
Knut Morten Okstad
e45e120a18 Added: Projection of general functions onto a specified basis.
Currently, only Greville point and continuous global L2 is supported.
Skip (without error) the projection and norm calculation when the
projection type is not supported.
2017-06-20 02:49:38 +02:00
Knut Morten Okstad
906abc41d4 Added: Interface class FunctionBase with a common evaluation method
for all spatial functions, such that we can deal with functions of
any return-type in the same implementation.
Changed: Using EXPECT_ instead og ASSERT_ in TestSplineUtils,
such that we catch all errors, not only the first one.
2017-06-20 02:49:38 +02:00
Knut Morten Okstad
82098a2f47 Fixed: Some minor issues pointed out by the clang code checks 2017-06-17 19:49:22 +02:00
Arne Morten Kvarving
97efa9abff fixed: use spl1 for continuous projection 2017-06-16 10:51:42 +02:00
Knut Morten Okstad
f0e9223772 Fixed: External energy calculations for model with MPC's.
Also fixed potential error in the path integral that will
surface for problems with more than one time-dependent SIM.
Changed: Devirtualized NormBase::addBoundaryTerms (common for all apps).
Changed: Reaction force calculation is optional in AdaptiveSIM::solveStep.
Changed: Moved the CharVec definition from SIMbase to SIMinput.
2017-06-15 19:53:41 +02:00
Knut Morten Okstad
ddb389d5fd Changed: Simplified the SIMNodalConstraint class a bit by moving the
static method of the separate helper class into a class member.
2017-06-12 06:17:35 +02:00
Knut Morten Okstad
ad5bf4ed56 Changed: Refactor globalL2projection into one common method that
defines the projection matrices and solves the equation system, and a new
(patch-type dependent) method that carries out the assembly task.
Added: Support the continuous option in ASMs1D::globalL2projection.
2017-06-12 06:01:23 +02:00
Knut Morten Okstad
3ebdaca4d9 Added: Made both CGL2-projection methods available via a version flag.
Changed: Using the second nGauss parameter when doing L2-projection.
2017-06-08 23:32:43 +02:00
Knut Morten Okstad
7bebd468e9 Changed: Enhanced the dumpVector method such that it can be used, not only
for the primary solution with an assumed number of variables per node,
but also for recovered solutions with varying number of nodal components.
Fixed: Avoid that all results points are packed in the same group when
several <resultpoints> tags are specified, with optional file names.
2017-06-08 23:32:43 +02:00
Knut Morten Okstad
1b4bea37ea Changed: Made the haveAnasol method virtual 2017-06-08 23:24:40 +02:00
Knut Morten Okstad
22ce232c2c Added: Option to specify a Neumann order flag (default=1).
A value higher than 1 is used when solving problems with
differential operator of order 2 (and higher), where you
typically need Neumann boundary conditions of two types.
E.g., for the biharmonic equation (thin plate problem),
you need to specify Neumann conditions involving both second
(bending moments) and third (shear forces) derivatives,
independently of each other.
2017-06-08 20:30:28 +02:00
Knut Morten Okstad
8a410d6298 Added: Scale characteristic element sizes by app-specified model size,
which can be specified as an attribute on the <geometry> tag
2017-06-05 15:41:58 +02:00
Knut Morten Okstad
b758eedbff Added: Unit tests for transformation and rotation angles extraction.
Changed: ASSERT --> EXPECT, to catch all potential errors.
2017-06-02 22:09:50 +02:00
Knut Morten Okstad
edf73cd1b6 Added: Extract total rotation angles for result point print 2017-06-02 22:09:50 +02:00
Arne Morten Kvarving
e6c12921da add static analysis tests 2017-05-31 22:20:49 +02:00
Knut Morten Okstad
8b4e1a99cc Fixed: The dofs and master node arguments were swapped in some add2PC calls 2017-05-23 16:58:31 +02:00
Knut Morten Okstad
34665a99a8 Changed: clang did not like the ++ operator inside the EXPECT_EQ macro 2017-05-23 16:58:31 +02:00
Arne Morten Kvarving
1a9292d35e changed: move wall law class to NavierStokes application 2017-05-23 14:52:38 +02:00
Knut Morten Okstad
13aee2fee3 Changed: Cleaned away some unused/defunct items from AdaptiveSIM 2017-05-23 08:38:46 +02:00
Arne Morten Kvarving
e14dd82b23 added: support LR multipatch models 2017-05-22 11:55:49 +02:00
Arne Morten Kvarving
52a6adfb07 changed: move connectPatch to ASMxD interface class 2017-05-22 11:55:49 +02:00
Arne Morten Kvarving
62714fa166 fixed: set a default docdir
also set the common executable directory in AppCommon
2017-05-22 11:05:25 +02:00
Arne Morten Kvarving
79fa468077 fixed: build of HDF5toVTx against system ifem 2017-05-18 09:50:50 +02:00
Arne Morten Kvarving
cc5d1e5a25 fixed: include directory variable name 2017-05-18 09:35:40 +02:00
Knut Morten Okstad
bf3ba37a20 Changed: Assume Voigt notation ordering when parsing expression functions
for symmetric tensors. To be consistent with the SymmTensor documentation.
This also fixes #87.
2017-05-17 16:41:01 +02:00
Knut Morten Okstad
6f0432ad16 Added: Derivatives of expression functions via separate expressions 2017-05-17 07:34:51 +02:00
Knut Morten Okstad
a84686438a Changed: Since RealFunc, VecFunc, etc. now are classes we can use forward
declaration of these instead of including Function.h in the headers,
in order to reduce dependencies during compilation
2017-05-16 19:47:15 +02:00
Knut Morten Okstad
7414379969 Added: Interface for evaluating function derivatives
Can be used for evaluating the residual of analytical solutions.
The default implementation returns zero, sub-classes have to
implement the derivatives when needed.
2017-05-16 19:47:15 +02:00
Knut Morten Okstad
0d454ce14c Fixed: 1D default geometry with nonzero X0 2017-05-16 19:39:06 +02:00
Arne Morten Kvarving
f57db931ac README: libcereal is only available for ubuntu 16.04+ 2017-05-16 10:19:54 +02:00
Arne Morten Kvarving
bb3ab78c9c fixed: if using internal tinyxml, make sure to install header 2017-05-16 09:53:32 +02:00
Knut Morten Okstad
b88896e9a6 Added: An extra matrix3d method + test 2017-05-15 05:06:53 +02:00
Arne Morten Kvarving
a28e318d68 add extra braces around initializer list 2017-05-12 12:47:54 +02:00
Arne Morten Kvarving
dfe8072485 fixed: workaround portland compiler bug
precision(new_precision) returns new, not old precision as it should.
this is a non-intrusive workaround
2017-05-12 12:47:54 +02:00
Arne Morten Kvarving
870e50833b add const - overload intended 2017-05-12 12:47:54 +02:00
Arne Morten Kvarving
d837afaf95 reorganize ifdef'ery to avoid warnings 2017-05-12 12:47:54 +02:00