Sundance Namespace Reference


Namespaces

namespace  Rivara

Classes

class  ADReal
 First-order automatic differentiation of a multivariable function. More...
class  ArrayOfTuples
 Class ArrayOfTuples packs an heterogeneous array of tuples into a single 1D array. More...
class  Pair
class  SortedPair
class  EnumTypeField
class  FixedArray
 A simple fixed-size array. More...
class  FunctorDomain
class  UnboundedDomain
class  PositiveDomain
class  StrictlyPositiveDomain
class  BoundedDomain
class  LowerBoundedDomain
class  NonzeroDomain
class  IntHashSet
class  IntVec
 An integer vector class for use in the generalized chain rule of Constantine and Savits (1996). More...
class  Map
 Extension of STL map, adding some nicer put/get/contains syntax and an iostream insertion operator. More...
class  MultiSet
 Extension of STL multiset, adding some nicer syntax and an iostream insertion operator. More...
class  NamedObject
 NamedObject provides an interface for getting and setting names of an object. More...
class  Noncopyable
 Noncopyable has a private copy ctor and assignment operator, which prevents any classes dervied from it from being copied. More...
class  ObjectWithInstanceID
 ObjectWithInstanceID provides a common method for the generation of instance-specific ID numbers. More...
class  VerbosityTraits
 Defines traits for getting default verbosity parameters from a class. More...
class  ObjectWithClassVerbosity
 ObjectWithClassVerbosity and the related verbosity() method provide a method for getting/setting verbosity flags for entire classes. More...
class  ParameterControlledObjectWithVerbosity
class  OrderedHandle
 Class OrderedHandle is an extension to Playa::Handle that includes a comparison operator ("<" operator) so that the handle can be used in ordered containers such as STL maps and sets. More...
class  OrderedPair
 OrderedPair provides a means of lexigraphic comparison of a pair of objects. More...
class  OrderedTriple
 Lexigraphically-comparable triple of objects. More...
class  OrderedQuartet
 Lexigraphically-comparable quartet of objects. More...
class  Point
 Point represents a spatial point. More...
class  Set
 Extension of STL set, adding some nicer syntax and an iostream insertion operator. More...
class  PowerFunctor
class  UnaryFunctor
class  VersionString
class  WatchFlag
 Class WatchFlag is used to mark individual expressions for possibly increased verbosity for diagnostic output. More...
class  BinaryEvaluator
class  CellDiameterExprEvaluator
class  CellVectorEvaluator
class  ChainRuleEvaluator
class  IndexPair
class  DerivProduct
class  ChainRuleSum
class  ConstantEvaluator
class  CoordExprEvaluator
class  CurveNormEvaluator
 Evaluator for the normal vector component (normal to one parameterized curve). More...
class  DerivOfSymbFuncEvaluator
class  DiffOpEvaluator
class  DiscreteFuncElementEvaluator
class  EFDEEvaluator
class  EvalManager
 EvalManager provides methods for interfacing to the framework through an AbstractEvalMediator and managing temporary variables through a TempStack. More...
class  Evaluator
 Base class for evaluator objects. More...
class  EvaluatorFactory
class  GenericEvaluatorFactory
class  NonlinearUnaryOpEvaluator
class  NullEvaluator
class  ProductEvaluator
class  StringEvalMediator
class  SubtypeEvaluator
class  SumEvaluator
class  SymbolicFuncElementEvaluator
class  TempStack
 TempStack provides a stack of temporary variables for use during evaluation. More...
class  UnaryEvaluator
class  UnaryMinusEvaluator
class  UserDefOpCommonEvaluator
 UserDefOpCommonEvaluator provides a single evaluation point for all components of a vector-valued functor. More...
class  UserDefOpEvaluator
class  AbstractEvalMediator
 Base class for evaluation mediator objects. More...
class  AlgebraSpecifier
 AlgebraSpecifier is used to indicate whether a given object represents a vector, scalar, component of a vector, etc. More...
class  CommonFuncDataStub
 CommonFuncDataStub is a placeholder for data to be shared between multiple components of a symbolic or discrete function. More...
class  Deriv
 The purpose of this class is to represent first-order spatial or functional differential operators. More...
class  DerivSet
 DerivSet is a set of multiple derivatives, sorted by increasing differentiation order. More...
class  DiscreteFuncDataStub
 DiscreteFuncDataStub is a placeholder for data to be shared between multiple components of a discrete function. More...
class  DiscreteFunctionStub
 DiscreteFunctionStub is the base class for discrete functions. More...
class  EquationSet
 Source: SundanceEquationSet.cpp. More...
class  EvalContext
 Different contexts might require the same expression to be evaluated to different orders of functional differentiation; for example, in setting up a linear system, second-order derivatives are required, but in evaluating a functional only zeroth derivs are required. More...
class  EvalContextStub
class  EvalVector
class  EvalVectorArray
class  FunctionIdentifier
 FunctionIdentifier provides a means for distinguishing between different functions and different vector components of the same function. More...
class  FunctionSupportResolver
class  LoadableVector
 LoadableVector is the interface through which a framework inserts values into a symbolic expression. More...
class  MultiIndex
 An integer vector representing a multivariate derivative. More...
class  MultipleDeriv
 Class MultipleDeriv is a multiple functional derivative operator represented as a multiset of first-order derivatives. More...
class  increasingOrder
class  increasingOrder< MultipleDeriv >
 Functor increasingOrder() is used as a comparison method for MultipleDeriv objects. More...
class  QuadratureFamilyStub
class  RegionQuadCombo
 Expressions may appear in more than one subregions of a problem, for instance in an internal domain and also on a boundary. More...
class  SpatialDerivSpecifier
 This class is a compact description of type of spatial derivative acting on an operative function: partial derivative, divergence, or normal derivative. More...
class  SymbolicFuncDescriptor
 This is a base class for functions or elements that need to report whether they're test or unknown functions. More...
class  TestFuncDataStub
 TestFuncDataStub is a placeholder for data to be shared between multiple components of a test function. More...
class  TestFunctionStub
 TestFunctionStub is the base class for unknown functions. More...
class  UnknownFuncDataStub
 UnknownFuncDataStub is a placeholder for data to be shared between multiple components of an unknown function. More...
class  UnknownFunctionStub
 UnknownFunctionStub is the base class for unknown functions. More...
class  BinaryExpr
 BinaryExpr is a base class for binary expressions, e.g., sums and products. More...
class  ConstantExpr
 ConstantExpr contains an immutable constant, to be distinguished from a parameter that is constant in space but can change during the course of a simulation. More...
class  CoordDeriv
 CoordDeriv represents a single first-order derivative with respect to a coordinate function. More...
class  DerivOfSymbFunc
 Specialization of DiffOp to the case where the argument is a symbolic function, allowing optimized evaluation. More...
class  DiffOp
class  DiscreteFuncElement
 DiscreteFuncElement represents a scalar-valued element of a (possibly) vector-valued discrete function. More...
class  EvaluatableExpr
class  ExplicitFunctionalDerivativeElement
 Scalar element of an explicit user-level functional derivative. More...
class  ExprBase
class  ExprWithChildren
 ExprWithChildren is a base class for any evaluatable expression that has child nodes, for example, sums and unary operators. More...
class  FuncElementBase
 FuncElementBase defines the interface for scalar-valued elements of Sundance functions. More...
class  FuncSetAccumulator
 This abstract class defines the interface for accumulating sets of functions that are available in an expression. More...
class  FunctionalPolynomial
 Specialized class for representing polynomials in symbolic functions and their derivatives. More...
class  FunctionWithID
 This is a base class for functions or elements that need an ID object. More...
class  ListExpr
class  NonlinearUnaryOp
class  ParameterData
 ParameterData is the specialization of DiscreteFuncDataStub to the case of a constant-valued discrete function. More...
class  ProductExpr
 ProductExpr represents a product of two scalar-valued expressions. More...
class  ScalarExpr
class  SparsitySuperset
class  SpatiallyConstantExpr
class  SumExpr
 SumExpr is the internal representation of an addition or subtraction node in the expression tree. More...
class  SumOfBCs
 SumOfBCs represents a sum of essential boundary conditions in integral form. More...
class  SumOfIntegrals
 SumOfIntegrals represents a sum of integrals, grouped by region and quadrature rule. More...
class  SymbolicFunc
 SymbolicFunc is a base class for functions such as test and unknown functions that are "variables" in a weak form. More...
class  SymbolicFuncElement
 SymbolicFuncElement represents a scalar-valued element of a (possibly) list-valued SymbolicFunction. More...
class  SymbPreprocessor
class  TestFuncElement
 TestFuncElement represents a scalar-valued element of a (possibly) list-valued TestFunction. More...
class  UnaryExpr
 UnaryExpr is a base class for operators that map a single scalar expr to another scalar expr. More...
class  UnaryMinus
class  UnknownFuncElement
 UnknownFuncElement represents a scalar-valued element of a (possibly) list-valued UnknownFunction. More...
class  UnknownParameterElement
 UnknownParameterElement represents an element of an unknown spatially-constant parameter. More...
class  UserDefFunctorElement
 Scalar-valued element of a vector-valued functor. More...
class  UserDefOpElement
 Scalar element of a vector-valued user-defined expression. More...
class  ZeroExpr
class  ProductTransformation
 ProductTransformation is a base class for any transformation which takes the two operands of a product (left, right) and produces a new expression mathematically equivalent to the original product. More...
class  ProductTransformationSequence
 ProductTransformationSequence is a sequence of transformations to be applied to a product, producing a transformed expression. More...
class  StdProductTransformations
 Apply a standard set of transformations. More...
class  RemoveZeroFromProduct
 Transform a product by removing a zero term:

\[ x \times 0 \rightarrow 0. \]

\[ 0 \times x \rightarrow 0. \]

. More...

class  RemoveOneFromProduct
 Transform a product by removing multiplication by 1.0:

\[ x \times 1.0 \rightarrow x. \]

\[ 1.0 \times x \rightarrow x. \]

. More...

class  RemoveMinusOneFromProduct
 Transform a product by removing multiplication by -1.0:

\[ x \times (-1.0) \rightarrow -x. \]

\[ -1.0 \times x \rightarrow -x. \]

. More...

class  MultiplyConstants
 Multiply two constant exprs without transformation. More...
class  MoveConstantsToLeftOfProduct
 Transform a product by moving any constants to the left:

\[ x \times a \rightarrow a \times x \]

. More...

class  MoveUnaryMinusOutsideProduct
 Transform a product by any unary minus operations outside the product

\[ (-x) \times y \rightarrow -(x \times y) \]

\[ x \times (-y) \rightarrow -(x \times y) \]

\[ )-x) \times (-y) \rightarrow x \times y \]

. More...

class  AssociateHungryDiffOpWithOperand
 Transform a product by associating any hungry diff op in the left operand with the right operand:

\[ (u D_x) v \rightarrow u D_x u \]

. More...

class  KillDiffOpOnConstant
 Kill a diff op acting on a constant

\[ D_x \alpha \rightarrow 0 \]

\[ D_x (\alpha + u) \rightarrow D_x u \]

. More...

class  BringConstantOutsideDiffOp
 Bring a constant outside a diff op

\[ D_x (\alpha u) \rightarrow \alpha D_x u \]

. More...

class  DistributeSumOfDiffOps
 Distribute a sum of diff ops over their operand

\[ (D_1 + D_2) u \rightarrow D_1 u + D_2 u \]

. More...

class  ApplySimpleDiffOp
 Apply a simple diff op. More...
class  RearrangeRightProductWithConstant
 Rearrange a product whose right operand is a product including a constant such that constants are grouped on the left:

\[ \alpha (\beta u) \rightarrow (\alpha\beta) u \]

\[ u (\alpha v) \rightarrow \alpha (u v) \]

. More...

class  RearrangeLeftProductWithConstant
 Rearrange a product whose left operand is a product including a constant such that constants are grouped on the left:

\[ (\alpha u)\beta \rightarrow \alpha\beta u \]

\[ (\alpha u)v \rightarrow \alpha (u v) \]

. More...

class  TakeConstantUnderIntegralSign
 Rearrange a product of a constant and an integral so that the constant is under the integral sign:

\[ \alpha \int u \rightarrow \int \alpha u \]

. More...

class  StdSumTransformations
 Apply a standard set of transformations. More...
class  IdentifyPolynomialSum
 Rewrite a sum as a polynomial object, if possible. More...
class  ReorderSum
 Put terms in a standard order. More...
class  RemoveUnaryMinusFromSum
 Simplify sums involving unary minuses

\[ x + (-y) \rightarrow x-y. \]

\[ (-x) + (-y) \rightarrow -(x+y). \]

\[ (-x) + y \rightarrow y-x. \]

. More...

class  RemoveZeroFromSum
 Transform a sum by removing a zero term:

\[ x + 0 \rightarrow x. \]

. More...

class  SumConstants
 Sum two constant exprs without transformation. More...
class  MoveConstantsToLeftOfSum
 Transform a sum by moving any constants to the left:

\[ x + a \rightarrow a + x \]

. More...

class  RearrangeRightSumWithConstant
 Rearrange a sum whose right operand is a sum including a constant such that constants are grouped on the left:

\[ \alpha + s_1 (\beta + s_2 u) \rightarrow (\alpha + s_1 \beta) + s_1 s_2 u \]

\[ u + s_1 (\alpha + s_2 v) \rightarrow s_1 \alpha + (u + s_1 s_2 v) \]

. More...

class  RearrangeLeftSumWithConstant
 Rearrange a sum whose left operand is a sum including a constant such that constants are grouped on the left:

\[ (\alpha + s_1 u) + s_2 \beta \rightarrow (\alpha + s_2 \beta) + s_1 u \]

\[ (\alpha + s_1 u) + s_2 v \rightarrow \alpha + (s_1 u + s_2 v) \]

. More...

class  SumIntegrals
 Transform sum of integrals to SumOfIntegral objects. More...
class  SumTransformation
 SumTransformation is a base class for any transformation which takes the two operands of a sum (left, right) and produces a new expression mathematically equivalent to the original sum. More...
class  SumTransformationSequence
 SumTransformationSequence is a sequence of transformations to be applied to a sum, producing a transformed expression. More...
class  SymbolicTransformation
 SumTransformation is a base class for any transformation which takes the two operands of a sum (left, right) and produces a new expression mathematically equivalent to the original sum. More...
class  CellDiameterExpr
 Expression that returns a characteristic size for each cell on which it is evaluated. More...
class  CellVectorExpr
 Expression that returns a component of a cell-determined vector for each cell on which it is evaluated. More...
class  ComplexExpr
 Complex expression. More...
class  CoordExpr
 CoordExpr is an expression that returns one of the cartesian coordinates for each point at which it evaluated. More...
class  CurveExpr
 class which serves as expression for interface (curve or surface) values More...
class  CurveNormExpr
 CurveNormExpr is an expression that returns the Cartesian coordinate component of the normal vector. More...
class  Derivative
 Derivative is an expression subtype representing a first-order spatial partial derivative operator. More...
class  Expr
 User-level expression class. More...
class  FunctionalEvaluatorBase
 Abstract interface for the FunctionalEvaluator class it contains only empty functions. More...
class  Parameter
 A Parameter is an expression subtype used to represent a spatially-constant parameter that may change during the course of a simulation, for example, the time in a transient simulation or a continuation parameter when using a homotopy method. More...
class  PointwiseUserDefFunctor0
 PointwiseUserDefFunctor0 is an implementation of UserDefFunctor for which the user writes code to evaluate the function at a single quadrature point. More...
class  PointwiseUserDefFunctor1
 PointwiseUserDefFunctor1 is an implementation of UserDefFunctor for which the user writes code to evaluate the function at a single quadrature point. More...
class  PointwiseUserDefFunctor2
 PointwiseUserDefFunctor2 is an implementation of UserDefFunctor for which the user writes code to evaluate the function at a single quadrature point. More...
class  UnknownParameter
class  UserDefFunctor
 UserDefFunctor defines an interface for callbacks used to implement user-defined nonlinear operators in the Sundance Expr system. More...
class  UserDefOp
 UserDefOp provides a hook for inserting a user-defined nonlinear function into the Sundance Expr system. More...
class  BinaryCellFilter
 BinaryCellFilter implements cell filters that do binary logical operations on cell sets. More...
class  BoundaryCellFilter
 BoundaryCellFilter identifies all cells of dimension $D-1$ on the boundary. More...
class  BoundaryCellPredicate
 BoundaryCellPredicate tests whether a cell is on the boundary of the domain. More...
class  CellCurvePredicate
class  CellFilter
 CellFilter is a user-level object representing a filter that selects from a mesh all cells that satisfy some condition. More...
class  CellFilterBase
 Base class for CellFilter objects. More...
class  CellIterator
 CellIterator is an iterator for walking through cell sets. More...
class  CellPredicate
 User-level handle for predicates (deriving from CellPredicateBase) used to decide whether a given cell passes a CellFilter. More...
class  CellPredicateBase
 CellPredicateBase is the base class for predicate objects that test cells against some condition. More...
class  CellSet
 CellSet is, you guessed it, a set of cells in a mesh. More...
class  CellSetBase
 CellSetBase is the base class for cell sets. More...
class  CFMeshPair
class  DimensionalCellFilter
 DimensionalCellFilter is a filter that identifies all cells of a specified dimension. More...
class  MeshDomainBase
 Base class for mesh refinement , but also to define computational domain (which must not be the same as the mesh domain). More...
class  CurveDomain
 Class defines mesh domain based on parametrized curve. More...
class  MeshDomainDef
class  ExplicitCellIterator
class  ExplicitCellSet
 ExplicitCellSet is a cell set subtype where the cell LIDs are stored explicitly in an STL set. More...
class  GIDCellPredicate
 GIDCellPredicate tests whether a cell's GID is contained in a specified set of GIDs. More...
class  ImplicitCellSet
 ImplicitCellSet is a cell set subtype where the set of cell LIDs is never stored. More...
class  LabelCellPredicate
 LabelCellPredicate tests whether a cell's label is equal to a reference label. More...
class  LabeledSubsetCellFilter
class  MaximalCellFilter
 MaximalCellFilter is a filter that identifies all mesh cells of maximal dimension. More...
class  MaximalCellSet
class  NullCellFilter
 NullCellFilter is used as a placeholder cell filter in those equations defined independently of geometry, i.e., equations involving only global parameters. More...
class  CellPredicateFunctorBase
class  PositionalCellPredicate
 PositionalCellPredicate tests whether the cell's nodes satisfy a condition on their positions. More...
class  PointCellPredicateFunctor
class  CoordinateValueCellPredicateFunctor
class  PointCellPredicate
class  CoordinateValueCellPredicate
class  SideCellFilter
class  SubsetCellFilter
class  SubsetManager
 SubsetManager keeps maps from cell filters to their subsets. More...
class  BasicSimplicialMesh
 A no-frills parallel simplicial mesh. More...
class  BasicSimplicialMeshType
 BasicSimplicialMeshType is used to create BasicSimplicialMesh objects. More...
class  VertexView
 VertexView is a read-only "view" of a cell's vertices, where the vertices are stored contiguously in a large master array. More...
class  HNMesh2D
 Class for 2D hierarchical structured quad Mesh
The main internal idea of the mesh ist that there are different numberings of the elements ID -> each element has an ID (also those which are completely outside the mesh domain, and those which are not leaf)
In the code sometimes internaly LID is used instead of ID due to legacy !! :-P
GID -> all leaf elements which are visible to Sundance (only the leaf elements should be visible)
LID -> all the elements which have GID and belong and either belong to the local processor or are in the ghost cells
. More...
class  HNMesh3D
 Class for 3D hierarchical structured quad Mesh
The main internal idea of the mesh ist that there are different numberings of the elements ID -> each element has an ID (also those which are completely outside the mesh domain, and those which are not leaf)
In the code sometimes internaly LID is used instead of ID due to legacy !! :-P
GID -> all leaf elements which are visible to Sundance (only the leaf elements should be visible)
LID -> all the elements which have GID and belong and either belong to the local processor or are in the ghost cells
. More...
class  HNMeshType2D
 Class for a simple capable to refine, and to work in parallel structured 2D mesh type
Mesh is based on the trisection refinement. More...
class  HNMeshType3D
 Class for a simple capable to refine, and to work in parallel structured 3D mesh type
Mesh is based on the trisection refinement. More...
class  PeanoMeshType2D
 PeanoMeshType is used to create PeanoMesh objects. More...
class  PeanoMeshType3D
 PeanoMeshType is used to create PeanoMesh objects. More...
class  PeriodicMesh1D
 Periodic mesh in 1D. More...
class  PeriodicMeshType1D
class  PeriodicSingleCellMesh1D
 Periodic one-element mesh in 1D. More...
class  CellJacobianBatch
 A CellJacobianBatch is a collection of Jacobian matrices for many quadrature points distributed over batch of cells. More...
class  CellReorderer
 User-level handle class for abstract specification of cell reordering algorithms. More...
class  CellReordererFactoryBase
 Factory class to instantiate cell reorderers for specific meshes. More...
class  GenericCellReordererFactory
 Factory class to instantiate cell reorderers for specific meshes. More...
class  CellReordererImplemBase
 Abstract interface for the low-level objects that implement cell reordering. More...
class  IdentityReordererImplem
 The identity reorderer walks through cells in whatever order they are numbered the the mesh. More...
class  IdentityReorderer
class  IncrementallyCreatableMesh
 IncrementallyCreatableMesh is an interface for the creation of meshes by adding vertices, then elements. More...
class  MaximalCofacetBatch
 MaximalCofacetBatch is used to store the maximal cofacets of a batch of cells of codimension one. More...
class  Mesh
 Mesh is the user-level object representing discrete geometry. More...
class  MeshBase
 Abstract interface to a mesh. More...
class  MeshType
 Class MeshType is a user-level object for specification of which internal mesh representation is to be used when building or reading a mesh. More...
class  MeshTypeBase
 MeshTypeBase is a factory class for empty meshes, allowing generic mesh sources to build a mesh of user-specified type. More...
class  BamgMeshReader
 BamgMeshReader reads a mesh stored in Frederic Hecht's g format. More...
class  ExodusMeshReader
 ExodusMeshReader reads a mesh from an ExodusII file. More...
class  ExodusNetCDFMeshReader
 ExodusNetCDFMeshReader reads a mesh from a NetCDF dump of an Exodus file. More...
class  HNMesher2D
class  HNMesher3D
class  MeshBuilder
class  MeshReaderBase
 MeshReaderBase is a base class for mesh sources that get a mesh from a file. More...
class  MeshSource
 MeshSource is the user-level interface for objects such as mesh generators and mesh file readers. More...
class  MeshSourceBase
 MeshSourceBase provides the internal interface for mesh sources, i.e., objects such as mesh generators and file readers that can produce a mesh object. More...
class  OneTriangleMesher
 Create a mesh having one triangle. More...
class  OneTetMesher
 Create a mesh having one tet. More...
class  PartitionedLineMesher
 PartitionedLineMesher meshes the one-dimensional interval $\left[a_x, b_x\right]$ with $n_x$ elements per processor. More...
class  PartitionedRectangleMesher
 PartitionedRectangleMesher meshes the rectangle $ \left[a_x, b_x\right] \otimes \left[a_y, b_y\right] $ with $ n_x \otimes n_y $ elements per processor. More...
class  PeanoMesher2D
class  PeanoMesher3D
class  PeriodicLineMesher
 Create a mesh having one triangle. More...
class  TriangleMeshReader
 TriangleMeshReader reads a mesh stored in Shewchuk's Triangle format. More...
class  ExtrusionMeshTransformation
 ExtrusionMeshTransformation extrudes a 2D mesh to 3D. More...
class  FileIOChacoPartitioner
 This partitioner makes a system call to run Chaco, passing partitioning information to it through file IO. More...
class  MeshTransformation
 MeshTransformation is the user-level interface for mesh filters, i.e., objects that take an input mesh and produce a new mesh. More...
class  MeshTransformationBase
 MeshSourceBase provides the internal interface for mesh filters, i.e., objects that take an input mesh and produce a new mesh. More...
class  SerialPartitionerBase
 Base class for mesh partitioners that run in serial. More...
class  CellLIDMappedFieldWrapper
class  DSVWriter
 DSVWriter writes a 1D mesh to delimiter-separated file. More...
class  DSVWriterFactory
 DSVWriterFactory produces a DSV writer in contexts where a user cannot do so directly. More...
class  ExodusWriter
 ExodusWriter writes a mesh or fields to an ExodusII file. More...
class  ExodusWriterFactory
 ExodusWriterFactory produces an Exodus writer in contexts where a user cannot do so directly. More...
class  FieldBase
class  FieldWriter
 FieldWriter is the user level object for writing fields and meshes to output stream. More...
class  FieldWriterBase
 FieldWriterBase is a base class for objects that write fields and/or meshes to a stream. More...
class  FieldWriterFactoryBase
 FieldWriterFactoryBase. More...
class  FieldWriterFactory
 In some contexts the user can't construct a writer directly; for example, during timestepping the writer might be constructed by the step controller. More...
class  MatlabWriter
 MatlabWriter writes a 1D mesh to a space-delimited file. More...
class  MatlabWriterFactory
 MatlabWriterFactory produces a Matlab writer in contexts where a user cannot do so directly. More...
class  TriangleWriter
 TriangleWriter writes a mesh or fields to a file in Shewchuk's Triangle format. More...
class  TriangleWriterFactory
 TriangleWriterFactory produces an Triangle writer in contexts where a user cannot do so directly. More...
class  VerboseFieldWriter
 VerboseFieldWriter dumps every imaginable bit of information about a mesh. More...
class  VTKWriter
 VTKWriter writes a mesh or fields to a VTK file. More...
class  VTKWriterFactory
 Create a VTKWriter. More...
class  Assembler
class  AssemblyKernelBase
 AssemblyKernelBase abstracts the operations that must be done in an assembly loop. More...
class  CurveEvalMediator
class  CurveIntegralCalc
 Class to compute the intersection/quadrature points of a cell with a curve in 2/3D. More...
class  CurveQuadratureIntegral
 Integration by quadrature over a maximal cell. More...
class  ElementIntegral
 ElementIntegral encapsulates the common data needed for the integration of groups of related zero-forms, one-forms, and two-forms. More...
class  FunctionalAssemblyKernel
 FunctionalAssemblyKernel does assembly of a functional value. More...
class  FunctionalEvaluator
class  FunctionalGradientAssemblyKernel
 FunctionalGradientAssemblyKernel does assembly of a functional and its gradient. More...
class  GrouperBase
 Grouper. More...
class  IntegralGroup
 IntegralGroup collects together several integrals having common properties that can be used either to eliminate redundant computations or to share storage an eliminate repeated allocations. More...
class  LocalDOFMap
 LocalDOFMap bundles several compact tables used for fast lookup of local DOFs. More...
class  LocalMatrixContainer
 LocalMatrixContainer is a container for local matrix and vector values. More...
class  MapBundle
 MapBundle collects several data structures needed for DOF mapping. More...
class  MatrixVectorAssemblyKernel
 MatrixVectorAssemblyKernel does assembly of a matrix and vector. More...
class  MaximalQuadratureIntegral
 Integration by quadrature over a maximal cell. More...
class  QuadratureEvalMediator
class  QuadratureIntegral
class  QuadratureIntegralBase
class  RefIntegral
 RefIntegral represents the integrals of a product of basis functions (or their derivatives) over a reference cell. More...
class  StdFwkEvalMediator
 StdFwkEvalMediator evaluates mesh-dependent functions in the standard framework. More...
class  SundanceSurf3DCalc
 This class contains the computational methods which are necessary for the 3D surface and cut-cell calculations. More...
class  TrivialGrouper
 Grouper. More...
class  VectorAssemblyKernel
 VectorAssemblyKernel builds load vectors. More...
class  VectorFillingAssemblyKernel
 VectorFillingAssemblyKernel provides a common implementation of multivector-filling capabilities needed by matrix-vector assembly, multivector assembly, and functional gradient evaluation. More...
class  Block
class  BlockArray
class  DOFMapBase
 Base interface for implementations of a degree of freedom map. More...
class  DOFMapBuilder
class  HNDoFMapBase
 The abstract class which extends the functionalities of the DOF map
The only additional functionality is that we have a restriction on the DOFs , with the pre-fill transformations these constraints can be build in into the matrix. More...
class  HNDoFMapBaseHomogeneous
 The abstract class which extends the functionalities of the DOF map
The only additional functionality is that we have a restriction on the DOFs , with the pre-fill transformations these constraints can be build in into the matrix. More...
class  HomogeneousDOFMap
 A HomogeneousDOFMap is a DOF map for the special (and common) case in which every function has the same basis and is defined on every cell in the mesh. More...
class  InhomogeneousDOFMapHN
 A MixedDOFMapHN is a DOF map for the case where every function is defined on every cell in the mesh, but where functions may have different bases. More...
class  InhomogeneousEdgeLocalizedDOFMap
class  InhomogeneousNodalDOFMap
class  MapStructure
class  MixedDOFMap
 A MixedDOFMap is a DOF map for the case where every function is defined on every cell in the mesh, but where functions may have different bases. More...
class  MixedDOFMapHN
 A MixedDOFMapHN is a DOF map for the case where every function is defined on every cell in the mesh, but where functions may have different bases. More...
class  NodalDOFMap
class  NodalDOFMapHN
class  PartialElementDOFMap
 PartialElementDOFMap is a DOF map specialized to the case of element-based DOFs on a subset of cells in the domain. More...
class  SpatiallyHomogeneousDOFMapBase
class  SundanceGlobal
 Class Sundance provides several static methods for managing the environment of a simulation. More...
class  AToCDensitySampler
 AToCDensitySampler samples a distribution of particles to compute a density function on a discrete space. More...
class  AToCPointLocator
 AToCPointLocator finds the cell index for a point within an unstructured mesh. More...
class  CoordinateSystemBase
class  CoordinateSystem
class  CartesianCoordinateSystem
class  MeridionalCylindricalCoordinateSystem
class  RadialSphericalCoordinateSystem
class  CoordinateSystemBuilder
class  CToAInterpolator
 CToAInterpolator interpolates a discrete function at particle positions. More...
class  StepControlParameters
class  OutputControlParameters
class  DoublingStepController
class  Eigensolution
class  EventDetectorBase
class  ThresholdEventDetector
class  ExprComparisonBase
 Base class for callback that computes distance between discrete functions. More...
class  DefaultExprComparison
 Default comparison computes Euclidean distance between vectors. More...
class  ExprFieldWrapper
class  Functional
class  L2Projector
 L2Projector projects an expression onto a DiscreteSpace. More...
class  LinearEigenproblem
class  LinearProblem
 LinearProblem encapsulates all information needed to form a discrete linear problem. More...
class  LinearSolveDriver
class  NLOp
 NLOp encapsulates a discrete nonlinear problem, and can be passed to a nonlinear solver such as NOX. More...
class  NonlinearProblem
 NonlinearProblem encapsulates a discrete nonlinear problem. More...
class  LineDomain
 This class bundles together a sequence of uniform meshes of the 1D interval [a,b] with cell filters defining the interior and boundaries. More...
class  RectangleDomain
 This class bundles together a sequence of uniform meshes of the 2D rectangle [ax,bx] times [ay,by] with cell filters defining the interior and boundaries. More...
class  LPTestSpec
class  ErrNormCalculatorBase
 Base class for objects that compute error norms. More...
class  L2NormCalculator
 Object to compute L2 norms of errors. More...
class  ForwardProblemTestBase
class  LPTestBase
class  LP1DTestBase
class  LPRectTestBase
class  LPTestSuite
class  RefinementTransformation
class  StochBlockJacobiSolver
class  TransientStepProblem
class  UniformRefinementPair
class  BasisDOFTopologyBase
 Abstract interface for specification of the topology of degree-of-freedom (DOF) assignments on reference cells in any dimension. More...
class  BasisFamily
 BasisFamily is the user-level handle class for specifying the basis with which a test, unknown, or discrete function is represented. More...
class  BasisArray
class  BasisFamilyBase
class  ScalarBasis
 Base class for scalar-valued basis families. More...
class  VectorBasis
class  HDivVectorBasis
 Base class for bases living in H(div). More...
class  HCurlVectorBasis
 Base class for bases living in H(curl). More...
class  BasisReferenceEvaluationBase
 Abstract interface for evaluation of basis functions and their spatial derivatives on reference cells. More...
class  Bernstein
 Bernstein basis. More...
class  BrickQuadrature
 Get abscissas and weights for Gaussian quadrature on Brick cells (cuboids). More...
class  Bubble
 Bubble function for use in error estimation. More...
class  ClosedNewtonCotes
 Closed Newton-Cotes quadrature rules for lines and triangles. More...
class  ClosedNewtonCotesType
 Generates closed Newton-Cotes quadrature rules. More...
class  CubicHermite
 CubicHermite basis. More...
class  DiscreteFunction
 DiscreteFunction represents a function that is discretized on a finite-element space. More...
class  DiscreteFunctionData
 DiscreteFunctionData. More...
class  DiscreteSpace
 DiscreteSpace represents a discrete finite-element space (i.e., a mesh and a basis). More...
class  EdgeLocalizedBasis
 EdgeLocalizedBasis is a basis function defined only on edges. More...
class  FeketeBrickQuadrature
 Get abscissas and weights for Gauss-Lobatto quadrature on brick cells (cuboids) (Gauss-Lobatto points are Fekete points on tensor elements). More...
class  FeketeQuadQuadrature
 Get abscissas and weights for Gauss-Lobatto quadrature on quadrilateral (Gauss-Lobatto points are Fekete points on tensor elements). More...
class  FeketeQuadrature
 Family of Fekete approach integration rules, suitable for integration over arbitrary regions (For tensor elements the Gauss-Lobatto points are Fekete points). More...
class  FeketeQuadratureType
 Family of Fekete approach integration rules, suitable for integration over arbitrary regions (For tensor elements the Gauss-Lobatto points are Fekete points). More...
class  FeketeTriangleQuadrature
 Get abscissas and weights for Fekete point quadrature on triangles. More...
class  Fourier
 Fourier basis. More...
class  FuncWithBasis
class  Gauss1D
 Get abscissas and weights for Gauss-Legendre quadrature on a line segement. More...
class  GaussianQuadrature
 Family of optimal Gaussian integration rules, e.g., Gauss-Legendre on lines, Dunavant on triangles. More...
class  GaussianQuadratureType
 Family of optimal Gaussian integration rules, e.g., Gauss-Legendre on lines, Dunavant on triangles. More...
class  GaussLobatto1D
 Get abscissas and weights for Gauss-Lobatto-Legendre quadrature on a line segment. More...
class  GaussLobattoQuadrature
class  Lagrange
 Lagrange basis. More...
class  Legendre
 Legendre basis. More...
class  Nedelec
 Lowest-order Nedelec basis. More...
class  PolygonQuadrature
 Quadrature special for the polygon curve integration
. More...
class  QuadQuadrature
 Get abscissas and weights for Gaussian quadrature on quadrilateral. More...
class  QuadratureFamily
 QuadratureFamily is a geometry-independent specification of a method by which quadrature is to be carried out. More...
class  QuadratureFamilyBase
 QuadratureFamilyBase extends QuadratureFamilyStub to provide an interface for getting quadrature points for a given cell type. More...
class  QuadratureType
 QuadratureFamily is a geometry-independent specification of a method by which quadrature is to be carried out. More...
class  QuadratureTypeBase
 QuadratureTypeBase. More...
class  RaviartThomas
 Lowest-order Raviart-Thomas basis. More...
class  SurfQuadrature
 The surface integral class. More...
class  TensorBasisBase
class  TestFunction
 TestFunction represents a test function in a finite element problem. More...
class  TestFunctionData
 TestFunctionData contains the specification of a test function's basis. More...
class  TetQuadrature
 Get abscissas and weights for Gaussian quadrature on tetrahedra. More...
class  TrapesoidQuadrature
class  TriangleQuadrature
 Get abscissas and weights for Gaussian quadrature on triangles. More...
class  UnknownFunction
 UnknownFunction represents an unknown function in a finite element problem. More...
class  UnknownFunctionData
 UnknownFunctionData contains the specification of an unknown function's basis. More...
class  VectorBasisComponent
 This class is for the representation of a single component of a vector-valued basis family. More...
class  IterCallbackBase
 IterCallbackBase provides an abstract interface for callbacks to be performed at the start of each optimization iteration. More...
class  DefaultIterCallback
 Default callback writes all variables to disk at a specified frequency. More...
class  LinearPDEConstrainedObj
 LinearPDEConstrainedObj is a base class for objective functions of the reduced-space variable where the constraint is a linear PDE in the state variables. More...
class  NonlinearPDEConstrainedObj
 NonlinearPDEConstrainedObj is a base class for objective functions of the reduced-space variable where the constraint is a nonlinear PDE in the state variables. More...
class  PDEConstrainedObjBase
 PDEConstrainedObj is a base class for objective functions of the reduced-space variable where the constraint is a PDE in the state variables. More...
class  PointData
 PointData is a utility class that helps create the Sundance objects required to include point measurements in an inversion problem. More...
class  SloppyPointComparitor
 Do lexigraphic comparison on points, including a bit of sloppiness. More...
class  PointDataExprFunctor
 This is a functor that allows the sensor readings to be obtained through a Sundance user-defined expression. More...
class  PointDataCellPredicateFunctor
 This is a functor that allows a positional cell predicate to test against the locations of the sensors. More...

Typedefs

typedef OrderedPair
< MultipleDeriv, MultipleDeriv
DerivPair
typedef Sundance::Map
< DerivPair, int > 
ProductRulePerms
typedef OrderedTriple
< OrderedHandle
< CellFilterStub >
, OrderedHandle
< QuadratureFamilyStub >
, WatchFlag
RegTriple
typedef std::set< int > ColSetType

Enumerations

enum  AlgebraType { VectorAT, NormalAT, CoordCompAT, ScalarAT }
enum  ComputationType {
  MatrixAndVector, VectorOnly, FunctionalOnly, FunctionalAndGradient,
  Sensitivities
}
enum  DerivType { CoordDT, FunctionalDT, NullDT }
enum  SpatialDerivType { IdentitySDT, PartialSDT, NormalSDT, DivSDT }
enum  DerivSubsetSpecifier { AllNonzeros, RequiredNonzeros, VariableNonzeros, ConstantNonzeros }
enum  DerivState { ZeroDeriv, ConstantDeriv, VectorDeriv }
 DerivState can be used to classify the known state of each functional derivative at any node in the expression tree. More...
enum  CellVectorExprType { CellNormalVector, CellTangentSpace }
enum  CellType {
  NullCell, PointCell, LineCell, TriangleCell,
  TetCell, QuadCell, BrickCell, PrismCell
}
 Enumeration of specific 1D, 2D, and 3D cell types. More...
enum  MeshEntityOrder { UFCMeshOrder, ExodusMeshOrder }
 Identifier for ordering convention. More...
enum  IntegrationCellSpecifier { NoTermsNeedCofacets, AllTermsNeedCofacets, SomeTermsNeedCofacets }
enum  ThresholdEventType { AnyAbove, AllAbove, AnyBelow, AllBelow }

Functions

ADReal operator+ (const double &scalar, const ADReal &a)
ADReal operator- (const double &scalar, const ADReal &a)
ADReal operator* (const double &scalar, const ADReal &a)
ADReal operator/ (const double &scalar, const ADReal &a)
ADReal pow (const ADReal &x, const double &y)
 SUNDANCE_AD_FUNCTOR (exp, StdExp) SUNDANCE_AD_FUNCTOR(log
StdLog SUNDANCE_AD_FUNCTOR (sqrt, StdSqrt) SUNDANCE_AD_FUNCTOR(sin
void reportFailure (const MPIComm &comm)
 Call this function upon catching an exception at a point before a collective operation.
bool checkForFailures (const MPIComm &comm)
 Call this function after exception-free completion of a try/catch block preceding a collective operation.
Array< Array< int > > partitionInteger (int n)
 Return partitions of an integer.
bool nextNum (Array< int > &digits, const Array< int > &radix)
 Get the next mixed-radix number.
void weightedPartitions (int n, const Array< int > &w, Array< Array< int > > &parts)
 Get the weighted partitions of an integer.
void weightedOrderedPartitions (const IntVec &v, const Array< int > &w, Array< Array< IntVec > > &parts)
void pSet (const IntVec &lambda, const IntVec &nu, int s, Array< Array< IntVec > > &K, Array< Array< IntVec > > &L)
Array< Array< Array< int > > > compositions (int n)
 Return compositions of an integer.
void restrictedCompositions (int n, int M, Array< Array< int > > &rComps)
 Get the compositions of length M of an integer n.
Array< Array< int > > nonNegCompositions (int n, int J)
 Return the non-negative compositions of an integer into J terms.
Set< Pair< MultiSet< int > > > loadPartitions (int x, int n, const MultiSet< int > &left, const MultiSet< int > &right)
 Form all pairs of multisets that can be generated from an initial pair by adding n copies of entry x.
Set< Pair< MultiSet< int > > > binaryPartition (const MultiSet< int > &m)
 Return the size-2 partitions of a multiset.
Set< MultiSet< MultiSet< int > > > multisetPartitions (const MultiSet< int > &m)
 Return the partitions of a multiset.
Map< int, int > countMap (const MultiSet< int > &m)
 Given a multiset, create a mapping from entry to number of repetitions in the multisets.
Array< Array< int > > indexCombinations (const Array< int > &s)
 For a given integer vector of length N, find all combinations of integers (i_1, 1_2, .
Array< Array< Array< int > > > binnings (const MultiSet< int > &mu, int n)
Array< Array< Array< int > > > indexArrangements (const MultiSet< int > &mu, const Array< int > &k)
Set< MultiSet< int > > multisetSubsets (const MultiSet< int > &x)
 Return all subsets of a multiset.
Array< Array< MultiSet< int > > > multisetCompositions (int s, const MultiSet< int > &x)
 Return the s-term compositions of a multiset.
Array< Array< int > > distinctIndexTuples (int m, int n)
 Generate the (n-choose-m) distinct index combinations for choosing m entries from an array of n elements.
Array< int > bitsOfAnInteger (int x, int n)
 Compute the n bits of an integer x < 2^n.
int pow2 (int n)
 Compute the n-th power of 2.
Array< Array< MultiSet< int > > > multisetSubsetNTuples (int n, const MultiSet< int > &x)
 Return all N-tuples of subsets of a multisets such that the union of tuple entries is a subset of the original multiset.
template<class T >
std::ostream & operator<< (std::ostream &os, const Pair< T > &p)
template<class T >
std::ostream & operator<< (std::ostream &os, const SortedPair< T > &p)
template<class T >
Array< Array< Array< T > > > indexArrangements (const MultiSet< T > &mu, const Array< int > &k)
template<class T >
Array< Array< Array< T > > > binnings (const MultiSet< T > &mu, int n)
 Return the distinct arrangements of the given multiset into n bins.
int factorial (const MultiSet< int > &ms)
template<class T >
FixedArray< 2, T > makeFA (const T &a, const T &b)
 FixedArray
template<class T >
FixedArray< 3, T > makeFA (const T &a, const T &b, const T &c)
 FixedArray
template<class T >
FixedArray< 4, T > makeFA (const T &a, const T &b, const T &c, const T &d)
 FixedArray
std::ostream & operator<< (std::ostream &os, const FunctorDomain &f)
IntVec intVec (int a)
IntVec intVec (int a, int b)
IntVec intVec (int a, int b, int c)
IntVec intVec (int a, int b, int c, int d)
IntVec intVec (int a, int b, int c, int d, int e)
template<class A , class B >
std::ostream & operator<< (std::ostream &os, const OrderedPair< A, B > &p)
void writeTable (std::ostream &os, const Tabs &tab, const Array< double > &a, int cols)
void writeTable (std::ostream &os, const Tabs &tab, const Array< int > &a, int cols)
ParameterList mergeParamLists (const ParameterList &pDef, const ParameterList &pIn)
string searchForFile (const std::string &name)
string getPathStr ()
Array< string > parsePathStr ()
Point operator* (const double &a, const Point &p)
Point cross (const Point &x, const Point &y)
 SUNDANCE_UNARY_FUNCTOR (reciprocal, StdReciprocal,"reciprocal function", NonzeroDomain(), 1.0/x[i],-f[i]*f[i],-2.0 *df[i]/x[i]) SUNDANCE_UNARY_FUNCTOR(fabs
absolute UnboundedDomain ()
template<typename A , typename B >
bool typeLessThan (const A *a, const B *b)
int mapExSideToMissingVertex (int dim, int exFaceID)
Array< int > exSideVertPos (int dim, int f)
Array< int > ufcSideVertPos (int dim, int f)
Array< int > ufcSide (int f, const Array< int > &verts)
Array< int > exSide (int f, const Array< int > &verts)
void vertexSort (Array< int > &verts, int *key)
void getKeyedPerm (int key, Array< int > &digits)
 Return the permutation that produces the specified key.
int iPow (int base, int n)
 Compute base^N.
int exVertPosToUFCVertPos (int meshDim, int permKey, int exVertPos)
int exFacetIndexToUFCFacetIndex (int meshDim, int permKey, int exFacetID)
int ufcFacetIndexToExFacetIndex (int meshDim, int ufcFacetID)
template<class T >
void insertionSort (Teuchos::Array< T > &A)
MultipleDeriv makeDeriv (const Expr &a)
MultipleDeriv makeDeriv (const Expr &a, const Expr &b)
MultipleDeriv makeDeriv (const Expr &a, const Expr &b, const Expr &c)
AlgebraSpecifier scalarAlgebraSpec ()
 AlgebraSpecifier.
AlgebraSpecifier normalAlgebraSpec ()
 AlgebraSpecifier.
AlgebraSpecifier coordAlgebraSpec (int dir)
 AlgebraSpecifier.
std::ostream & operator<< (std::ostream &os, const ComputationType &ct)
Deriv coordDeriv (int d)
Deriv coordDeriv (const MultiIndex &mi)
Deriv funcDeriv (const SymbolicFuncElement *symbFunc)
Deriv funcDeriv (const SymbolicFuncElement *symbFunc, const MultiIndex &mi)
Deriv funcDeriv (const SymbolicFunc *symbFunc)
Deriv funcDeriv (const SymbolicFunc *symbFunc, const MultiIndex &mi)
Deriv normalDeriv (const SymbolicFuncElement *symbFunc)
Deriv divergenceDeriv (const SymbolicFunc *symbFunc)
FunctionIdentifier makeFuncID (int tensorOrder)
RCP< const CommonFuncDataStubgetSharedFunctionData (const FuncElementBase *f)
Set< MultipleDerivapplyTx (const Set< MultipleDeriv > &S, const MultiIndex &x)
 Tranform the input set S as follows: for each multiple derivative in S, apply the multiindex x to each of its component functional derivatives in turn.
Set< MultipleDerivXx (const MultiIndex &x)
Set< MultipleDerivapplyZx (const Set< MultipleDeriv > &W, const MultiIndex &x)
 Filter the input set W, allowing only coordinate derivatives in the direction x and functional derivatives whose associated functions have nonzero evaluation points.
int factorial (const MultipleDeriv &ms)
MultipleDeriv makeMultiDeriv (const Deriv &d)
bool hasParameter (const MultipleDeriv &d)
Array< Array< std::pair< int,
Array< MultipleDeriv > > > > 
chainRuleDerivsOfArgs (int nArgs, const MultiSet< int > &bSet, const MultipleDeriv &c)
Array< Array< Array< int > > > bStructure (const Array< int > &b, const Array< Array< int > > &tmp)
Array< OrderedPair< Array
< MultiSet< int > >, Array
< MultipleDeriv > > > 
chainRuleTerms (int s, const MultiSet< int > &lambda, const MultipleDeriv &nu)
Set< MultipleDerivmultisetSubsets (const MultipleDeriv &x)
 Return all subsets of a multiset.
int chainRuleMultiplicity (const MultipleDeriv &nu, const Array< MultiSet< int > > &K, const Array< MultipleDeriv > &L)
 Return the multiplicity of a chain rule term.
Expr makeZeros (const Expr &e)
Expr CellNormalExpr (int dimension, const std::string &name)
Expr CellTangentExpr (int dimension, const std::string &name)
Expr Complex (const Expr &re, const Expr &im)
Expr List (const Expr &a)
Expr List (const Expr &a, const Expr &b)
Expr List (const Expr &a, const Expr &b, const Expr &c)
Expr List (const Expr &a, const Expr &b, const Expr &c, const Expr &d)
Expr List (const Expr &a, const Expr &b, const Expr &c, const Expr &d, const Expr &e)
Expr List (const Expr &a, const Expr &b, const Expr &c, const Expr &d, const Expr &e, const Expr &f)
Expr List (const Expr &a, const Expr &b, const Expr &c, const Expr &d, const Expr &e, const Expr &f, const Expr &g)
Expr List (const Expr &a, const Expr &b, const Expr &c, const Expr &d, const Expr &e, const Expr &f, const Expr &g, const Expr &h)
Expr pow (const Expr &expr, const double &p)
Expr gradient (int dim)
Expr div (const Expr &f)
Expr cross (const Expr &a, const Expr &b)
Expr curl (const Expr &f)
Expr colonProduct (const Expr &A, const Expr &B)
Expr outerProduct (const Expr &A, const Expr &B)
bool isVector (const Expr &x, int &N)
bool isSquareMatrix (const Expr &x, int &N)
Array< CFMeshPairresolvePair (const CFMeshPair &a, const CFMeshPair &b)
Array< CFMeshPairresolveSets (const Array< CFMeshPair > &s)
Array< CFMeshPairfindDisjointFilters (const Array< CellFilter > &filters, const Array< Set< int > > &funcs, const Mesh &mesh)
std::ostream & operator<< (std::ostream &os, const CFMeshPair &c)
std::ostream & operator<< (std::ostream &os, const CellJacobianBatch &J)
std::string toString (const CellType &c)
 Return a std::string representation of the cell type.
int dimension (const CellType &c)
 Return the dimension of the cell type.
int numFacets (const CellType &c, int facetDim)
 Return the number of faces of a given facet dimension for a cell type.
CellType facetType (const CellType &c, int facetDim, int facetIndex)
std::ostream & operator<< (std::ostream &os, const CellType &c)
 output stream operator for CellType.
bool cellContainsPoint (const Mesh &mesh, int cellDim, int cellLID, const double *x, Array< int > &facetLID)
double volume (const Mesh &mesh, int cellDim, int cellLID)
double orient2D (const double *A, const double *B, const double *x)
int findEnclosingCell (const Mesh &mesh, int cellDim, int initialGuessLID, const double *x)
Point pullback (const Mesh &mesh, int cellDim, int cellLID, const double *x)
void printCell (const Mesh &mesh, int cellLID)
void maximalNeighbors (const Mesh &mesh, int cellDim, int cellLID, const Array< int > &facetLID, std::list< int > &rtn)
Point cross3 (const Point &a, const Point &b)
double cross2 (const Point &a, const Point &b)
CellSet connectedNodeSet (const CellFilter &f, const Mesh &mesh)
RCP< Array< int > > cellSetToLIDArray (const CellSet &cs)
double evaluateIntegral (const Mesh &mesh, const Expr &expr)
std::ostream & operator<< (std::ostream &os, const IntegrationCellSpecifier &s)
Array< Array< BasisFamily > > testBasisArray (const RCP< FunctionSupportResolver > &fsr)
Array< Array< BasisFamily > > unkBasisArray (const RCP< FunctionSupportResolver > &fsr)
Array< RCP
< BasisDOFTopologyBase > > 
replicate (const RCP< BasisDOFTopologyBase > &model, int n)
Mesh unfoldPeriodicMesh (const Mesh &mesh)
 "Unfold" a periodic mesh to produce a 1D mesh without duplicated vertices
DiscreteSpace unfoldPeriodicDiscreteSpace (const DiscreteSpace &space)
 "Unfold" a periodic discrete space, producing a non-periodic discretization of the same interval
Expr unfoldPeriodicDiscreteFunction (const Expr &f, const string &name="")
 "Unfold" a discrete function defined on a periodic mesh, producing a function usable on a non-periodic mesh of the same interval
void handleException (std::exception &e)
bool passFailTest (bool pass)
bool passFailTest (double error, double tol)
bool passFailTest (const std::string &statusMsg, bool status, double error, double tol)
int & testStatus ()
CommandLineProcessor & clp ()
int init (int *argc, char ***argv)
int finalize ()
void setOption (const std::string &optionName, int &value, const std::string &helpMsg)
void setOption (const std::string &optionName, double &value, const std::string &helpMsg)
void setOption (const std::string &optionName, std::string &value, const std::string &helpMsg)
void setOption (const std::string &optionTrueName, const std::string &optionFalseName, bool &value, const std::string &helpMsg)
std::ostream & operator<< (std::ostream &os, const CoordinateSystem &cs)
double L2Norm (const Mesh &mesh, const CellFilter &domain, const Expr &f, const QuadratureFamily &quad)
double H1Seminorm (const Mesh &mesh, const CellFilter &filter, const Expr &f, const QuadratureFamily &quad)
double H1Norm (const Mesh &mesh, const CellFilter &filter, const Expr &f, const QuadratureFamily &quad)
Expr readNodalFields (const MeshSource &mesher, const Mesh &mesh, const VectorType< double > &vecType)
 Read the node-based fields from a mesher.
Expr readSerialGridField (const std::string &gridFile, double ax, double bx, double ay, double by, const VectorType< double > &vecType, const MeshType &meshType, Mesh &mesh)
 Read a 2D field stored in simple ASCII format.
double readbackTester (const std::string &infile, const MPIComm &comm)
 This function reads in an exodus file, discretizes a function on it, and computes some functional on it.
void invertMap (const Map< int, int > &in, Map< int, int > &out)
void serialPartition (const RCP< SerialPartitionerBase > &part, int numProc, const MeshSource &mesher, const std::string &outfile)
 Partition a mesh and write the parts to exodus files.
Expr NitschePoissonDirichletBC (int dim, const CellFilter &cells, const QuadratureFamily &quad, const Expr &kappa, const Expr &v, const Expr &u, const Expr &uBC, const double &gamma)
 This function forms the expressions that apply the Dirichlet BC $u=u_{BC}$ via Nitsche's method for the Poisson operator.
Expr NitscheStokesNoSlipBC (const CellFilter &cells, const QuadratureFamily &quad, const Expr &nu, const Expr &v, const Expr &q, const Expr &u, const Expr &p, const Expr &uBC, const double &gamma1, const double &gamma2)
 This function forms the expressions that apply the Dirichlet BC ${\bf u}={\bf u}_{BC}$ via Nitsche's method for the Stokes operator.
bool checkErrorNorms (const Mesh &mesh, const CellFilter &filter, const Expr &numSoln, const Expr &exactSoln, const QuadratureFamily &quad, double L2Tol, double H1SemiTol, double H1Tol)
 This function checks the L2 and H1 norms and the H1 seminorm of an error against a specified tolerance.
double fitPower (const Array< double > &h, const Array< double > &err)
 Compute the exponent $p$ that best fits the measured errors to a power law $\epsilon=A h^p$.
Array< std::pair< int, int > > vectorDimStructure (const Array< BasisFamily > &basis)
Array< std::pair< int, int > > vectorDimStructure (const BasisFamily &basis)
bool basisRestrictableToBoundary (const BasisFamily &b)
Array< BasisFamilyreplicate (const BasisFamily &b, int n)
Array< BasisFamilyreplicate (const Array< BasisFamily > &b, int n)
static Time & getLocalValsTimer ()
static Time & dfCtorTimer ()
void updateDiscreteFunction (const Expr &newVals, Expr old)
void addVecToDiscreteFunction (Expr df, const Vector< double > &v)
Expr copyDiscreteFunction (const Expr &u0, const string &name)
void setDiscreteFunctionVector (Expr u, const Vector< double > &v)
Vector< double > getDiscreteFunctionVector (const Expr &u)
Mesh getDiscreteFunctionMesh (const Expr &u)
std::string describeFunction (const Expr &f)
void printQuad (std::ostream &os, const Array< Point > &pts, const Array< double > &wgts)

Variables

 StdFabs
absolute value

Typedef Documentation

typedef std::set<int> Sundance::ColSetType

Definition at line 66 of file SundanceAssembler.hpp.

Definition at line 46 of file SundanceMultipleDeriv.hpp.

Definition at line 51 of file SundanceMultipleDeriv.hpp.

Definition at line 53 of file SundanceRegionQuadCombo.hpp.


Enumeration Type Documentation

Enumerator:
VectorAT 
NormalAT 
CoordCompAT 
ScalarAT 

Definition at line 41 of file SundanceAlgebraSpecifier.hpp.

Enumerator:
CellNormalVector 
CellTangentSpace 

Definition at line 44 of file SundanceCellVectorExpr.hpp.

enum ComputationType [related, inherited]

Specifier of what sort of calculation is to be done with an equation set

Enumerator:
MatrixAndVector 
VectorOnly 
FunctionalOnly 
FunctionalAndGradient 
Sensitivities 

Definition at line 44 of file SundanceComputationType.hpp.

DerivState can be used to classify the known state of each functional derivative at any node in the expression tree.

ZeroDeriv means the derivative is structurally zero at that node -- note that derivatives that are nonzero at a root node can be structurally zero at some child node. ConstantDeriv means that the derivative is known to be a constant (in space) at that node. VectorDeriv means that the derivative is non-zero, non-constant, i.e., a vector of values.

Enumerator:
ZeroDeriv 
ConstantDeriv 
VectorDeriv 

Definition at line 63 of file SundanceSparsitySuperset.hpp.

Enumerator:
AllNonzeros 
RequiredNonzeros 
VariableNonzeros 
ConstantNonzeros 

Definition at line 66 of file SundanceEvaluatableExpr.hpp.

Enumerator:
CoordDT 
FunctionalDT 
NullDT 

Definition at line 49 of file SundanceDeriv.hpp.

Enumerator:
NoTermsNeedCofacets 
AllTermsNeedCofacets 
SomeTermsNeedCofacets 

Definition at line 43 of file SundanceIntegrationCellSpecifier.hpp.

Identifier for ordering convention.

Enumerator:
UFCMeshOrder 
ExodusMeshOrder 

Definition at line 50 of file SundanceMeshBase.hpp.

Enumerator:
IdentitySDT 
PartialSDT 
NormalSDT 
DivSDT 

Definition at line 42 of file SundanceSpatialDerivSpecifier.hpp.

Enumerator:
AnyAbove 
AllAbove 
AnyBelow 
AllBelow 

Definition at line 64 of file SundanceEventDetector.hpp.


Function Documentation

void Sundance::addVecToDiscreteFunction ( Expr  df,
const Vector< double > &  v 
) [related]

Set< MultipleDeriv > Sundance::applyTx ( const Set< MultipleDeriv > &  S,
const MultiIndex x 
)

Tranform the input set S as follows: for each multiple derivative in S, apply the multiindex x to each of its component functional derivatives in turn.

Note that the multiindex may have negative indices. Results with negative multiindices are ignored.

Definition at line 261 of file SundanceMultipleDeriv.cpp.

References Sundance::Set< Key, Compare >::begin(), Sundance::Deriv::derivWrtMultiIndex(), Sundance::Set< Key, Compare >::end(), Sundance::Deriv::isFunctionalDeriv(), Sundance::MultiIndex::isValid(), Sundance::SpatialDerivSpecifier::mi(), Sundance::Deriv::opOnFunc(), Sundance::Set< Key, Compare >::put(), and Sundance::MultiSet< Key >::put().

Referenced by Sundance::DiffOp::internalDetermineR(), Sundance::DiffOp::internalFindV(), and Sundance::DiffOp::internalFindW().

Set< MultipleDeriv > Sundance::applyZx ( const Set< MultipleDeriv > &  W,
const MultiIndex x 
)

Filter the input set W, allowing only coordinate derivatives in the direction x and functional derivatives whose associated functions have nonzero evaluation points.

This function is used in the spatial/functional chain rule to identify those terms resulting from differentiation wrt x or functional derivatives.

Definition at line 302 of file SundanceMultipleDeriv.cpp.

References Sundance::Set< Key, Compare >::begin(), Sundance::Set< Key, Compare >::end(), Sundance::MultipleDeriv::order(), Sundance::MultiIndex::order(), and Sundance::Set< Key, Compare >::put().

Referenced by Sundance::DiffOp::internalDetermineR(), Sundance::DiffOp::internalFindV(), and Sundance::DiffOp::internalFindW().

bool Sundance::basisRestrictableToBoundary ( const BasisFamily b  )  [related]

Set< Pair< MultiSet< int > > > Sundance::binaryPartition ( const MultiSet< int > &  m  ) 

Return the size-2 partitions of a multiset.

This is used in a recursive algorithm to determine all partitions of a multset.

Definition at line 283 of file SundanceCombinatorialUtils.cpp.

References Sundance::Set< Key, Compare >::begin(), countMap(), Sundance::Set< Key, Compare >::end(), loadPartitions(), Sundance::Set< Key, Compare >::merge(), Sundance::Set< Key, Compare >::put(), and Sundance::Set< Key, Compare >::size().

Referenced by multisetPartitions().

template<class T >
Array<Array<Array<T> > > Sundance::binnings ( const MultiSet< T > &  mu,
int  n 
) [inline]

Return the distinct arrangements of the given multiset into n bins.

Definition at line 261 of file SundanceCombinatorialUtils.hpp.

References compositions(), and indexArrangements().

Array<Array<Array<int> > > Sundance::binnings ( const MultiSet< int > &  mu,
int  n 
)

Array< int > Sundance::bitsOfAnInteger ( int  x,
int  n 
)

Compute the n bits of an integer x < 2^n.

The bits are ordered least-to-most significant.

Definition at line 583 of file SundanceCombinatorialUtils.cpp.

References pow2().

Referenced by multisetSubsets(), and Sundance::MultipleDeriv::productRulePermutations().

Array<Array<Array<int> > > Sundance::bStructure ( const Array< int > &  b,
const Array< Array< int > > &  tmp 
) [related]

Definition at line 1100 of file SundanceExprWithChildren.cpp.

Referenced by chainRuleDerivsOfArgs().

bool Sundance::cellContainsPoint ( const Mesh mesh,
int  cellDim,
int  cellLID,
const double *  x,
Array< int > &  facetLID 
) [related]

Expr Sundance::CellNormalExpr ( int  dimension,
const std::string &  name 
) [related]

Definition at line 49 of file SundanceCellVectorExpr.cpp.

References Teuchos::toString().

Referenced by NitschePoissonDirichletBC(), and NitscheStokesNoSlipBC().

RCP< Array< int > > Sundance::cellSetToLIDArray ( const CellSet cs  ) 

Expr Sundance::CellTangentExpr ( int  dimension,
const std::string &  name 
) [related]

Definition at line 61 of file SundanceCellVectorExpr.cpp.

References Teuchos::toString().

Array<Array<std::pair<int, Array<MultipleDeriv> > > > Sundance::chainRuleDerivsOfArgs ( int  nArgs,
const MultiSet< int > &  bSet,
const MultipleDeriv c 
) [related]

int Sundance::chainRuleMultiplicity ( const MultipleDeriv nu,
const Array< MultiSet< int > > &  K,
const Array< MultipleDeriv > &  L 
)

Return the multiplicity of a chain rule term.

Definition at line 1204 of file SundanceExprWithChildren.cpp.

References factorial().

Referenced by Sundance::ChainRuleEvaluator::init().

Array<OrderedPair<Array<MultiSet<int> >, Array<MultipleDeriv> > > Sundance::chainRuleTerms ( int  s,
const MultiSet< int > &  lambda,
const MultipleDeriv nu 
) [related]

bool Sundance::checkErrorNorms ( const Mesh mesh,
const CellFilter filter,
const Expr numSoln,
const Expr exactSoln,
const QuadratureFamily quad,
double  L2Tol,
double  H1SemiTol,
double  H1Tol 
)

This function checks the L2 and H1 norms and the H1 seminorm of an error against a specified tolerance.

Definition at line 53 of file SundanceProblemTesting.cpp.

References H1Norm(), H1Seminorm(), L2Norm(), and Playa::Out::root().

bool Sundance::checkForFailures ( const MPIComm comm  ) 

Call this function after exception-free completion of a try/catch block preceding a collective operation.

This function will do an AllReduce in conjunction with calls to either this function or its partner, reportFailure(), on the other processors. If a failure has been reported by another processor, the call to checkForFailures() will return true and an exception can be thrown.

Definition at line 18 of file SundanceCollectiveExceptionCheck.cpp.

References Playa::MPIComm::allReduce(), Playa::MPIDataType::intType(), and Playa::MPIOp::sumOp().

Referenced by Sundance::BasicSimplicialMesh::assignIntermediateCellGIDs(), Sundance::PartitionedLineMesher::fillMesh(), Sundance::BasicSimplicialMesh::resolveEdgeOwnership(), and Sundance::BasicSimplicialMesh::synchronizeNeighborLists().

CommandLineProcessor& Sundance::clp (  ) 

Definition at line 89 of file Sundance.cpp.

References Sundance::SundanceGlobal::clp().

Expr Sundance::colonProduct ( const Expr &  A,
const Expr &  B 
) [related]

Definition at line 91 of file SundanceVectorCalculus.cpp.

References isSquareMatrix().

Expr Sundance::Complex ( const Expr re,
const Expr im 
) [related]

Array< Array< Array< int > > > Sundance::compositions ( int  n  ) 

CellSet Sundance::connectedNodeSet ( const CellFilter f,
const Mesh mesh 
)

AlgebraSpecifier Sundance::coordAlgebraSpec ( int  dir  )  [related]

Deriv Sundance::coordDeriv ( const MultiIndex mi  )  [related]

Definition at line 322 of file SundanceDeriv.cpp.

References Sundance::MultiIndex::firstOrderDirection().

Deriv Sundance::coordDeriv ( int  d  )  [related]

Expr Sundance::copyDiscreteFunction ( const Expr u0,
const string &  name 
) [related]

Map< int, int > Sundance::countMap ( const MultiSet< int > &  m  ) 

Given a multiset, create a mapping from entry to number of repetitions in the multisets.

Definition at line 387 of file SundanceCombinatorialUtils.cpp.

References Sundance::Map< Key, Value, Compare >::containsKey(), and Sundance::Map< Key, Value, Compare >::put().

Referenced by binaryPartition().

Expr Sundance::cross ( const Expr &  a,
const Expr &  b 
) [related]

Definition at line 61 of file SundanceVectorCalculus.cpp.

References cross(), List(), and Sundance::Expr::size().

Point Sundance::cross ( const Point &  x,
const Point &  y 
) [inline]

double Sundance::cross2 ( const Point a,
const Point b 
) [inline]

Definition at line 266 of file SundanceRivaraElement.cpp.

Referenced by Sundance::Rivara::Element::volume().

Point Sundance::cross3 ( const Point a,
const Point b 
) [inline]

Definition at line 260 of file SundanceRivaraElement.cpp.

Referenced by Sundance::Rivara::Element::volume().

Expr Sundance::curl ( const Expr &  f  )  [related]

Definition at line 84 of file SundanceVectorCalculus.cpp.

References cross(), gradient(), and Sundance::Expr::size().

std::string Sundance::describeFunction ( const Expr &  f  ) 

static Time& Sundance::dfCtorTimer (  )  [static]

Array< Array< int > > Sundance::distinctIndexTuples ( int  m,
int  n 
)

Generate the (n-choose-m) distinct index combinations for choosing m entries from an array of n elements.

Definition at line 550 of file SundanceCombinatorialUtils.cpp.

Referenced by chainRuleTerms().

Expr Sundance::div ( const Expr &  f  )  [related]

Definition at line 49 of file SundanceVectorCalculus.cpp.

References Sundance::Expr::size().

Deriv Sundance::divergenceDeriv ( const SymbolicFunc symbFunc  ) 

Definition at line 357 of file SundanceDeriv.cpp.

References DivSDT.

double Sundance::evaluateIntegral ( const Mesh mesh,
const Expr expr 
)

int Sundance::exFacetIndexToUFCFacetIndex ( int  meshDim,
int  permKey,
int  exFacetID 
)

Array< int > Sundance::exSide ( int  f,
const Array< int > &  verts 
)

Definition at line 96 of file SundanceVertexSort.cpp.

References exSideVertPos().

Array< int > Sundance::exSideVertPos ( int  dim,
int  sideIndex 
)

Definition at line 34 of file SundanceVertexSort.cpp.

Referenced by exSide().

int Sundance::exVertPosToUFCVertPos ( int  meshDim,
int  permKey,
int  exVertPos 
)

Definition at line 150 of file SundanceVertexSort.cpp.

References getKeyedPerm(), and Playa::Out::os().

Referenced by exFacetIndexToUFCFacetIndex().

int Sundance::factorial ( const MultipleDeriv ms  ) 

int Sundance::factorial ( const MultiSet< int > &  ms  )  [inline]

int Sundance::finalize (  ) 

Definition at line 97 of file Sundance.cpp.

References Sundance::SundanceGlobal::finalize().

Referenced by main().

Array< CFMeshPair > Sundance::findDisjointFilters ( const Array< CellFilter > &  filters,
const Array< Set< int > > &  funcs,
const Mesh mesh 
)

Definition at line 172 of file SundanceCFMeshPair.cpp.

References csPartitionTimer(), and resolveSets().

Referenced by Sundance::DOFMapBuilder::funcDomains().

int Sundance::findEnclosingCell ( const Mesh mesh,
int  cellDim,
int  initialGuessLID,
const double *  x 
) [related]

double Sundance::fitPower ( const Array< double > &  h,
const Array< double > &  err 
)

Compute the exponent $p$ that best fits the measured errors to a power law $\epsilon=A h^p$.

Definition at line 94 of file SundanceProblemTesting.cpp.

References pow().

Referenced by Sundance::ForwardProblemTestBase::runTestSequence().

Deriv Sundance::funcDeriv ( const SymbolicFunc symbFunc,
const MultiIndex mi 
) [related]

Definition at line 345 of file SundanceDeriv.cpp.

Deriv Sundance::funcDeriv ( const SymbolicFunc symbFunc  )  [related]

Definition at line 339 of file SundanceDeriv.cpp.

Deriv Sundance::funcDeriv ( const SymbolicFuncElement symbFunc,
const MultiIndex mi 
) [related]

Definition at line 333 of file SundanceDeriv.cpp.

Deriv Sundance::funcDeriv ( const SymbolicFuncElement symbFunc  )  [related]

Mesh Sundance::getDiscreteFunctionMesh ( const Expr u  )  [related]

Vector<double> Sundance::getDiscreteFunctionVector ( const Expr u  )  [related]

void Sundance::getKeyedPerm ( int  key,
Array< int > &  digits 
)

Return the permutation that produces the specified key.

Definition at line 129 of file SundanceVertexSort.cpp.

References iPow().

Referenced by exVertPosToUFCVertPos().

static Time& Sundance::getLocalValsTimer (  )  [static]

std::string Sundance::getPathStr (  ) 

Definition at line 61 of file SundancePathUtils.cpp.

Referenced by parsePathStr().

RCP< const CommonFuncDataStub > Sundance::getSharedFunctionData ( const FuncElementBase f  ) 

Expr Sundance::gradient ( int  dim  )  [related]

double Sundance::H1Norm ( const Mesh mesh,
const CellFilter filter,
const Expr f,
const QuadratureFamily quad 
) [related]

Definition at line 186 of file SundanceFunctional.cpp.

References evaluateIntegral(), gradient(), and Sundance::Mesh::spatialDim().

Referenced by checkErrorNorms().

double Sundance::H1Seminorm ( const Mesh mesh,
const CellFilter filter,
const Expr f,
const QuadratureFamily quad 
) [related]

Definition at line 176 of file SundanceFunctional.cpp.

References gradient(), L2Norm(), and Sundance::Mesh::spatialDim().

Referenced by checkErrorNorms().

void Sundance::handleException ( std::exception &  e  ) 

Definition at line 70 of file Sundance.cpp.

References Sundance::SundanceGlobal::handleException().

Referenced by main().

bool Sundance::hasParameter ( const MultipleDeriv d  ) 

Definition at line 368 of file SundanceMultipleDeriv.cpp.

template<class T >
Array<Array<Array<T> > > Sundance::indexArrangements ( const MultiSet< T > &  mu,
const Array< int > &  k 
) [inline]

Definition at line 220 of file SundanceCombinatorialUtils.hpp.

Array<Array<Array<int> > > Sundance::indexArrangements ( const MultiSet< int > &  mu,
const Array< int > &  k 
)

Definition at line 447 of file SundanceCombinatorialUtils.cpp.

Referenced by binnings().

Array< Array< int > > Sundance::indexCombinations ( const Array< int > &  s  ) 

For a given integer vector of length N, find all combinations of integers (i_1, 1_2, .

.. i_N) such that $0 \le i_j < s_j$. For example, if $ s = (2,3) $, return

 { {0,0}, {0,1}, {0,2}, {1,0}, {1,1}, {1,2} }

Definition at line 399 of file SundanceCombinatorialUtils.cpp.

Referenced by chainRuleDerivsOfArgs().

int Sundance::init ( int *  argc,
char ***  argv 
)

template<class T >
void Sundance::insertionSort ( Teuchos::Array< T > &  A  )  [inline]

Definition at line 19 of file SundanceVertexSort.hpp.

Referenced by vertexSort().

IntVec Sundance::intVec ( int  a,
int  b,
int  c,
int  d,
int  e 
) [inline]

Definition at line 148 of file SundanceIntVec.hpp.

IntVec Sundance::intVec ( int  a,
int  b,
int  c,
int  d 
) [inline]

Definition at line 141 of file SundanceIntVec.hpp.

IntVec Sundance::intVec ( int  a,
int  b,
int  c 
) [inline]

Definition at line 134 of file SundanceIntVec.hpp.

IntVec Sundance::intVec ( int  a,
int  b 
) [inline]

Definition at line 127 of file SundanceIntVec.hpp.

IntVec Sundance::intVec ( int  a  )  [inline]

Definition at line 120 of file SundanceIntVec.hpp.

void Sundance::invertMap ( const Map< int, int > &  in,
Map< int, int > &  out 
)

Definition at line 197 of file SundanceMeshIOUtils.cpp.

References Sundance::Map< Key, Value, Compare >::put().

Referenced by serialPartition().

int Sundance::iPow ( int  base,
int  n 
)

Compute base^N.

Definition at line 142 of file SundanceVertexSort.cpp.

Referenced by getKeyedPerm().

bool Sundance::isSquareMatrix ( const Expr &  x,
int &  N 
) [related]

Definition at line 153 of file SundanceVectorCalculus.cpp.

References isVector(), Sundance::Expr::size(), and Sundance::Expr::totalSize().

Referenced by colonProduct().

bool Sundance::isVector ( const Expr &  x,
int &  N 
) [related]

Definition at line 138 of file SundanceVectorCalculus.cpp.

References Sundance::Expr::size(), and Sundance::Expr::totalSize().

Referenced by isSquareMatrix(), and outerProduct().

double Sundance::L2Norm ( const Mesh mesh,
const CellFilter domain,
const Expr f,
const QuadratureFamily quad 
) [related]

Expr Sundance::List ( const Expr a,
const Expr b,
const Expr c,
const Expr d,
const Expr e,
const Expr f,
const Expr g,
const Expr h 
) [related]

Definition at line 1083 of file SundanceExpr.cpp.

Expr Sundance::List ( const Expr a,
const Expr b,
const Expr c,
const Expr d,
const Expr e,
const Expr f,
const Expr g 
) [related]

Definition at line 1076 of file SundanceExpr.cpp.

Expr Sundance::List ( const Expr a,
const Expr b,
const Expr c,
const Expr d,
const Expr e,
const Expr f 
) [related]

Definition at line 1070 of file SundanceExpr.cpp.

Expr Sundance::List ( const Expr a,
const Expr b,
const Expr c,
const Expr d,
const Expr e 
) [related]

Definition at line 1064 of file SundanceExpr.cpp.

Expr Sundance::List ( const Expr a,
const Expr b,
const Expr c,
const Expr d 
) [related]

Definition at line 1058 of file SundanceExpr.cpp.

Expr Sundance::List ( const Expr a,
const Expr b,
const Expr c 
) [related]

Definition at line 1053 of file SundanceExpr.cpp.

Expr Sundance::List ( const Expr a,
const Expr b 
) [related]

Definition at line 1048 of file SundanceExpr.cpp.

Expr Sundance::List ( const Expr a  )  [related]

Set< Pair< MultiSet< int > > > Sundance::loadPartitions ( int  x,
int  n,
const MultiSet< int > &  left,
const MultiSet< int > &  right 
)

Form all pairs of multisets that can be generated from an initial pair by adding n copies of entry x.

This is used in the partitioning of multisets.

Definition at line 260 of file SundanceCombinatorialUtils.cpp.

References Sundance::Set< Key, Compare >::put(), and Sundance::MultiSet< Key >::put().

Referenced by binaryPartition().

MultipleDeriv Sundance::makeDeriv ( const Expr a,
const Expr b,
const Expr c 
)

MultipleDeriv Sundance::makeDeriv ( const Expr a,
const Expr b 
)

MultipleDeriv Sundance::makeDeriv ( const Expr a  ) 

template<class T >
FixedArray<4,T> Sundance::makeFA ( const T &  a,
const T &  b,
const T &  c,
const T &  d 
) [inline]

FixedArray

Definition at line 119 of file SundanceFixedArray.hpp.

template<class T >
FixedArray<3,T> Sundance::makeFA ( const T &  a,
const T &  b,
const T &  c 
) [inline]

FixedArray

Definition at line 107 of file SundanceFixedArray.hpp.

template<class T >
FixedArray<2,T> Sundance::makeFA ( const T &  a,
const T &  b 
) [inline]

FixedArray

Definition at line 97 of file SundanceFixedArray.hpp.

FunctionIdentifier Sundance::makeFuncID ( int  tensorOrder  )  [related]

MultipleDeriv Sundance::makeMultiDeriv ( const Deriv d  ) 

Expr Sundance::makeZeros ( const Expr v  ) 

Definition at line 356 of file SundanceSymbPreprocessor.cpp.

References Sundance::Expr::size().

int Sundance::mapExSideToMissingVertex ( int  dim,
int  exFaceID 
)

Definition at line 16 of file SundanceVertexSort.cpp.

Referenced by exFacetIndexToUFCFacetIndex().

void Sundance::maximalNeighbors ( const Mesh mesh,
int  cellDim,
int  cellLID,
const Array< int > &  facetLID,
std::list< int > &  rtn 
) [related]

Definition at line 212 of file SundanceGeomUtils.cpp.

References Sundance::Mesh::getCofacets().

Referenced by findEnclosingCell().

Teuchos::ParameterList Sundance::mergeParamLists ( const ParameterList &  pDef,
const ParameterList &  pIn 
)

Array< Array< MultiSet< int > > > Sundance::multisetCompositions ( int  s,
const MultiSet< int > &  x 
)

Return the s-term compositions of a multiset.

These are the permutations of the s-term partitions.

Definition at line 524 of file SundanceCombinatorialUtils.cpp.

References Sundance::Set< Key, Compare >::begin(), Sundance::Set< Key, Compare >::end(), multisetPartitions(), and sort().

Referenced by chainRuleTerms().

Set< MultiSet< MultiSet< int > > > Sundance::multisetPartitions ( const MultiSet< int > &  m  ) 

Return the partitions of a multiset.

The partitions are sets of subsets such that the union of the members equals the original multiset.

Definition at line 333 of file SundanceCombinatorialUtils.cpp.

References Sundance::Set< Key, Compare >::begin(), binaryPartition(), Sundance::Set< Key, Compare >::end(), Sundance::MultiSet< Key >::put(), and Sundance::Set< Key, Compare >::put().

Referenced by multisetCompositions().

Array<Array<MultiSet<int> > > Sundance::multisetSubsetNTuples ( int  n,
const MultiSet< int > &  x 
)

Return all N-tuples of subsets of a multisets such that the union of tuple entries is a subset of the original multiset.

For example, if the input multiset is {a,b,b}, the subsets are

Precondition:
{a}, {b}, {a,b}, {a, b, b}, {b, b}.

The 2-tuples are all pairs drawn from that collection. Of these, only

({a}, {b}) ({a}, {b, b})

satisfy the requirement that the union of tuple entries is a subset of {a,b,b}.

Set< MultipleDeriv > Sundance::multisetSubsets ( const MultipleDeriv x  ) 

Set< MultiSet< int > > Sundance::multisetSubsets ( const MultiSet< int > &  x  ) 

bool Sundance::nextNum ( Array< int > &  digits,
const Array< int > &  radix 
)

Get the next mixed-radix number.

Definition at line 49 of file SundanceCombinatorialUtils.cpp.

Referenced by Sundance::IntVec::getPartitions(), weightedOrderedPartitions(), and weightedPartitions().

Expr Sundance::NitschePoissonDirichletBC ( int  dim,
const CellFilter &  cells,
const QuadratureFamily &  quad,
const Expr &  kappa,
const Expr &  v,
const Expr &  u,
const Expr &  uBC,
const double &  gamma 
)

This function forms the expressions that apply the Dirichlet BC $u=u_{BC}$ via Nitsche's method for the Poisson operator.

Definition at line 42 of file SundanceNitscheBC.cpp.

References CellNormalExpr(), and gradient().

Expr Sundance::NitscheStokesNoSlipBC ( const CellFilter &  cells,
const QuadratureFamily &  quad,
const Expr &  nu,
const Expr &  v,
const Expr &  q,
const Expr &  u,
const Expr &  p,
const Expr &  uBC,
const double &  gamma1,
const double &  gamma2 
)

This function forms the expressions that apply the Dirichlet BC ${\bf u}={\bf u}_{BC}$ via Nitsche's method for the Stokes operator.

Parameters:
cells the surface on which the BC is to be applied
quad the quadrature rule to be used
nu the viscosity, which may be a function of velocity
v velocity test function
q pressure test function
u velocity unknown function
p pressure unknown function
uBC specified velocity at surface

Definition at line 59 of file SundanceNitscheBC.cpp.

References CellNormalExpr(), gradient(), and Sundance::Expr::size().

Array< Array< int > > Sundance::nonNegCompositions ( int  n,
int  J 
)

Return the non-negative compositions of an integer into J terms.

Definition at line 215 of file SundanceCombinatorialUtils.cpp.

References partitionInteger(), and sort().

Referenced by chainRuleDerivsOfArgs(), and restrictedCompositions().

AlgebraSpecifier Sundance::normalAlgebraSpec (  )  [related]

Deriv Sundance::normalDeriv ( const SymbolicFuncElement symbFunc  )  [related]

Definition at line 352 of file SundanceDeriv.cpp.

References NormalSDT.

Point Sundance::operator* ( const double &  a,
const Point &  p 
) [inline]

Definition at line 266 of file SundancePoint.hpp.

ADReal Sundance::operator* ( const double &  scalar,
const ADReal a 
) [related]

Definition at line 171 of file SundanceADReal.cpp.

ADReal Sundance::operator+ ( const double &  scalar,
const ADReal a 
) [related]

Definition at line 161 of file SundanceADReal.cpp.

ADReal Sundance::operator- ( const double &  scalar,
const ADReal a 
) [related]

Definition at line 166 of file SundanceADReal.cpp.

ADReal Sundance::operator/ ( const double &  scalar,
const ADReal a 
) [related]

Definition at line 176 of file SundanceADReal.cpp.

References Sundance::ADReal::reciprocate().

std::ostream& Sundance::operator<< ( std::ostream &  os,
const CoordinateSystem &  cs 
) [inline]

Definition at line 168 of file SundanceCoordinateSystem.hpp.

References Playa::Handle< PointerType >::ptr().

std::ostream& Sundance::operator<< ( std::ostream &  os,
const IntegrationCellSpecifier &  s 
) [inline]

std::ostream& Sundance::operator<< ( std::ostream &  os,
const CellJacobianBatch &  J 
) [inline]

std::ostream& Sundance::operator<< ( std::ostream &  os,
const CFMeshPair &  c 
) [inline]

std::ostream& Sundance::operator<< ( std::ostream &  os,
const ComputationType ct 
) [inline]

template<class A , class B >
std::ostream& Sundance::operator<< ( std::ostream &  os,
const OrderedPair< A, B > &  p 
) [inline]

Definition at line 117 of file SundanceOrderedTuple.hpp.

std::ostream& Sundance::operator<< ( std::ostream &  os,
const FunctorDomain &  f 
) [inline]

Definition at line 159 of file SundanceFunctorDomain.hpp.

References Sundance::FunctorDomain::description().

template<class T >
std::ostream& Sundance::operator<< ( std::ostream &  os,
const SortedPair< T > &  p 
) [inline]

Definition at line 178 of file SundanceCombinatorialUtils.hpp.

template<class T >
std::ostream& Sundance::operator<< ( std::ostream &  os,
const Pair< T > &  p 
) [inline]

Definition at line 159 of file SundanceCombinatorialUtils.hpp.

double Sundance::orient2D ( const double *  A,
const double *  B,
const double *  x 
) [related]

Expr Sundance::outerProduct ( const Expr &  A,
const Expr &  B 
) [related]

Definition at line 116 of file SundanceVectorCalculus.cpp.

References isVector().

Teuchos::Array< std::string > Sundance::parsePathStr (  ) 

Definition at line 82 of file SundancePathUtils.cpp.

References getPathStr().

Referenced by searchForFile().

Array< Array< int > > Sundance::partitionInteger ( int  n  ) 

Return partitions of an integer.

Author:
Kevin Long

Definition at line 16 of file SundanceCombinatorialUtils.cpp.

Referenced by compositions(), and nonNegCompositions().

bool Sundance::passFailTest ( const std::string &  statusMsg,
bool  status,
double  error,
double  tol 
)

Definition at line 81 of file Sundance.cpp.

References Sundance::SundanceGlobal::passFailTest().

bool Sundance::passFailTest ( double  error,
double  tol 
)

Definition at line 77 of file Sundance.cpp.

References Sundance::SundanceGlobal::passFailTest().

bool Sundance::passFailTest ( bool  pass  ) 

Definition at line 74 of file Sundance.cpp.

References Sundance::SundanceGlobal::passFailTest().

Referenced by main().

Expr Sundance::pow ( const Expr expr,
const double &  p 
) [inline]

Definition at line 63 of file SundanceStdMathOps.hpp.

References Playa::Handle< PointerType >::ptr().

ADReal Sundance::pow ( const ADReal &  x,
const double &  y 
) [inline]

int Sundance::pow2 ( int  n  ) 

Compute the n-th power of 2.

Definition at line 603 of file SundanceCombinatorialUtils.cpp.

Referenced by bitsOfAnInteger(), multisetSubsets(), and Sundance::MultipleDeriv::productRulePermutations().

void Sundance::printCell ( const Mesh mesh,
int  cellLID 
)

void Sundance::printQuad ( std::ostream &  os,
const Array< Point > &  pts,
const Array< double > &  wgts 
) [related]

Definition at line 436 of file SundanceQuadratureFamily.cpp.

Referenced by Sundance::ElementIntegral::getQuad().

void Sundance::pSet ( const IntVec &  lambda,
const IntVec &  nu,
int  s,
Array< Array< IntVec > > &  K,
Array< Array< IntVec > > &  L 
)

Point Sundance::pullback ( const Mesh mesh,
int  cellDim,
int  cellLID,
const double *  x 
) [related]

double Sundance::readbackTester ( const std::string &  infile,
const MPIComm comm 
)

This function reads in an exodus file, discretizes a function on it, and computes some functional on it.

It then writes the field, reads it back, and computes the same functional on the new copy. The return value is the difference between the two functionals which should be zero if all is running correctly.

Definition at line 125 of file SundanceMeshIOUtils.cpp.

References Sundance::FieldWriter::addField(), Sundance::FieldWriter::addMesh(), evaluateIntegral(), Sundance::MeshSource::getMesh(), Sundance::L2Projector::project(), readNodalFields(), Playa::Out::root(), Sundance::Mesh::spatialDim(), and Sundance::FieldWriter::write().

Expr Sundance::readNodalFields ( const MeshSource mesher,
const Mesh mesh,
const VectorType< double > &  vecType 
)

Expr Sundance::readSerialGridField ( const std::string &  gridFile,
double  ax,
double  bx,
double  ay,
double  by,
const VectorType< double > &  vecType,
const MeshType meshType,
Mesh mesh 
)

Read a 2D field stored in simple ASCII format.

nx ny # num x pts, num y pts u1_1 u2_1 ... uN_1 # data at node 1 u1_2 u2_2 ... uN_2 # data at node 2

Definition at line 58 of file SundanceMeshIOUtils.cpp.

References Sundance::DiscreteFunction::discFunc(), Sundance::MeshSource::getMesh(), Sundance::DiscreteFunction::getVector(), Playa::loadable(), Sundance::DiscreteFunction::map(), Sundance::Mesh::numCells(), and Sundance::DiscreteFunction::setVector().

Array<BasisFamily> Sundance::replicate ( const Array< BasisFamily > &  b,
int  n 
) [inline]

Definition at line 287 of file SundanceBasisFamily.hpp.

Array<BasisFamily> Sundance::replicate ( const BasisFamily &  b,
int  n 
) [inline]

Definition at line 278 of file SundanceBasisFamily.hpp.

Array<RCP<BasisDOFTopologyBase> > Sundance::replicate ( const RCP< BasisDOFTopologyBase > &  model,
int  n 
) [related]

void Sundance::reportFailure ( const MPIComm comm  ) 

Call this function upon catching an exception at a point before a collective operation.

This function will do an AllReduce in conjunction with calls to either this function or its partner, checkForFailures(), on the other processors. This procedure has the effect of communicating to the other processors that an exception has been detected on this one.

Definition at line 10 of file SundanceCollectiveExceptionCheck.cpp.

References Playa::MPIComm::allReduce(), Playa::MPIDataType::intType(), and Playa::MPIOp::sumOp().

Referenced by Sundance::BasicSimplicialMesh::assignIntermediateCellGIDs(), Sundance::PartitionedLineMesher::fillMesh(), Sundance::BasicSimplicialMesh::resolveEdgeOwnership(), and Sundance::BasicSimplicialMesh::synchronizeNeighborLists().

Array< CFMeshPair > Sundance::resolvePair ( const CFMeshPair a,
const CFMeshPair b 
)

Array< CFMeshPair > Sundance::resolveSets ( const Array< CFMeshPair > &  s  ) 

Definition at line 137 of file SundanceCFMeshPair.cpp.

References Sundance::CFMeshPair::isEmpty(), and resolvePair().

Referenced by findDisjointFilters().

void Sundance::restrictedCompositions ( int  n,
int  len,
Array< Array< int > > &  rComps 
)

Get the compositions of length M of an integer n.

Definition at line 210 of file SundanceCombinatorialUtils.cpp.

References nonNegCompositions().

Referenced by Sundance::IntVec::getPartitions().

AlgebraSpecifier Sundance::scalarAlgebraSpec (  )  [related]

AlgebraSpecifier.

Definition at line 128 of file SundanceAlgebraSpecifier.cpp.

References ScalarAT.

Referenced by makeFuncID().

std::string Sundance::searchForFile ( const std::string &  name  ) 

void Sundance::serialPartition ( const RCP< SerialPartitionerBase > &  part,
int  numProc,
const MeshSource mesher,
const std::string &  outfile 
)

void Sundance::setDiscreteFunctionVector ( Expr  u,
const Vector< double > &  v 
) [related]

void Sundance::setOption ( const std::string &  optionTrueName,
const std::string &  optionFalseName,
bool &  value,
const std::string &  helpMsg 
)

Definition at line 122 of file Sundance.cpp.

References Sundance::SundanceGlobal::setOption().

void Sundance::setOption ( const std::string &  optionName,
std::string &  value,
const std::string &  helpMsg 
)

Definition at line 115 of file Sundance.cpp.

References Sundance::SundanceGlobal::setOption().

void Sundance::setOption ( const std::string &  optionName,
double &  value,
const std::string &  helpMsg 
)

Definition at line 108 of file Sundance.cpp.

References Sundance::SundanceGlobal::setOption().

void Sundance::setOption ( const std::string &  optionName,
int &  value,
const std::string &  helpMsg 
)

Definition at line 101 of file Sundance.cpp.

References Sundance::SundanceGlobal::setOption().

StdLog Sundance::SUNDANCE_AD_FUNCTOR ( sqrt  ,
StdSqrt   
)

Sundance::SUNDANCE_AD_FUNCTOR ( exp  ,
StdExp   
)

Sundance::SUNDANCE_UNARY_FUNCTOR ( reciprocal  ,
StdReciprocal  ,
"reciprocal function"  ,
NonzeroDomain()  ,
1.0/  x[i],
-f *  f[i][i],
-2.0 *df/  x[i][i] 
)

Array<Array<BasisFamily> > Sundance::testBasisArray ( const RCP< FunctionSupportResolver > &  fsr  )  [related]

Definition at line 930 of file SundanceDOFMapBuilder.cpp.

References Sundance::BasisFamily::getBasis().

int& Sundance::testStatus (  ) 

Definition at line 85 of file Sundance.cpp.

References Sundance::SundanceGlobal::testStatus().

Referenced by main().

template<typename A , typename B >
bool Sundance::typeLessThan ( const A *  a,
const B *  b 
) [inline]

int Sundance::ufcFacetIndexToExFacetIndex ( int  meshDim,
int  ufcFacetIndex 
)

Definition at line 173 of file SundanceVertexSort.cpp.

Referenced by Sundance::ExodusWriter::writeMesh().

Array< int > Sundance::ufcSide ( int  f,
const Array< int > &  verts 
)

Definition at line 85 of file SundanceVertexSort.cpp.

Array< int > Sundance::ufcSideVertPos ( int  dim,
int  f 
)

Definition at line 59 of file SundanceVertexSort.cpp.

absolute Sundance::UnboundedDomain (  ) 

Type Constraints

Referenced by Sundance::PowerFunctor::powerDomain().

Expr Sundance::unfoldPeriodicDiscreteFunction ( const Expr f,
const string &  name 
)

DiscreteSpace Sundance::unfoldPeriodicDiscreteSpace ( const DiscreteSpace space  ) 

"Unfold" a periodic discrete space, producing a non-periodic discretization of the same interval

Definition at line 76 of file SundanceUnfoldPeriodicDF.cpp.

References Sundance::DiscreteSpace::basis(), Sundance::DiscreteSpace::mesh(), unfoldPeriodicMesh(), and Sundance::DiscreteSpace::vecType().

Referenced by unfoldPeriodicDiscreteFunction().

Mesh Sundance::unfoldPeriodicMesh ( const Mesh mesh  ) 

"Unfold" a periodic mesh to produce a 1D mesh without duplicated vertices

Definition at line 55 of file SundanceUnfoldPeriodicDF.cpp.

References Sundance::MeshSource::getMesh(), Sundance::Mesh::nodePosition(), Sundance::Mesh::numCells(), Playa::Handle< PointerType >::ptr(), and Playa::MPIComm::self().

Referenced by unfoldPeriodicDiscreteSpace().

Array<Array<BasisFamily> > Sundance::unkBasisArray ( const RCP< FunctionSupportResolver > &  fsr  )  [related]

Definition at line 944 of file SundanceDOFMapBuilder.cpp.

References Sundance::BasisFamily::getBasis().

void Sundance::updateDiscreteFunction ( const Expr newVals,
Expr  old 
) [related]

Array<std::pair<int, int> > Sundance::vectorDimStructure ( const BasisFamily basis  )  [related]

Definition at line 224 of file SundanceBasisFamily.cpp.

References vectorDimStructure().

Array<std::pair<int, int> > Sundance::vectorDimStructure ( const Array< BasisFamily > &  basis  )  [related]

void Sundance::vertexSort ( Array< int > &  verts,
int *  key 
)

Definition at line 107 of file SundanceVertexSort.cpp.

References insertionSort().

Referenced by Sundance::ExodusMeshReader::fillMesh().

double Sundance::volume ( const Mesh mesh,
int  cellDim,
int  cellLID 
)

void Sundance::weightedOrderedPartitions ( const IntVec &  v,
const Array< int > &  w,
Array< Array< IntVec > > &  parts 
)

Definition at line 110 of file SundanceCombinatorialUtils.cpp.

References Playa::abs(), nextNum(), Sundance::IntVec::size(), and weightedPartitions().

Referenced by pSet().

void Sundance::weightedPartitions ( int  n,
const Array< int > &  w,
Array< Array< int > > &  parts 
)

Get the weighted partitions of an integer.

Definition at line 70 of file SundanceCombinatorialUtils.cpp.

References nextNum().

Referenced by weightedOrderedPartitions().

void Sundance::writeTable ( std::ostream &  os,
const Tabs tab,
const Array< int > &  a,
int  cols 
)

Definition at line 64 of file SundanceOut.cpp.

void Sundance::writeTable ( std::ostream &  os,
const Tabs tab,
const Array< double > &  a,
int  cols 
)

Set< MultipleDeriv > Sundance::Xx ( const MultiIndex x  ) 


Variable Documentation

Definition at line 104 of file SundanceStdMathFunctors.hpp.

const double & Teuchos::Parameter::value

Site Contact