Skip to content

Namespace ae108::solve

Namespace List > ae108 > solve

Minimize the total energy. More...

Namespaces

Type Name
namespace dynamics

Classes

Type Name
struct AffineTransform
class DynamicSolver <class Assembler, class NonlinearSolver>
class GeneralizedNonlinearSolver <class Assembler>
class GeneralizedTAOSolver <class Assembler>
struct InconsistentBoundaryConditionsException
struct InvalidVertexException
class LeastSquaresSolver <class Assembler>
class NonlinearSolver <class Assembler>
class TAOSolver <class Assembler>
class TransformingSolver <class Assembler>

Public Functions

Type Name
cpppetsc::distributed< cpppetsc::Vector > apply (const AffineTransform & transform, const cpppetsc::distributed< cpppetsc::Vector > & x)
Applies the affine transform to an input vector x and returns the result.
void apply (const AffineTransform & transform, const cpppetsc::distributed< cpppetsc::Vector > & x, cpppetsc::distributed< cpppetsc::Vector > *const out)
Applies the affine transform to an input vector x and writes the result toout .
AffineTransform boundaryConditionsToEquations (const std::vector< cpppetsc::GeneralizedConstrainedDOFs > & boundaryConditions, const cpppetsc::Mesh & mesh)
Converts a vector of GeneralizedMeshBoundaryCondition s to a matrixA and a vectorb that encodes the boundary conditions. The boundary conditions are satisfied forx if and only ifAx + b = 0 .
AffineTransform boundaryConditionsToTransform (const std::vector< cpppetsc::GeneralizedConstrainedDOFs > & constrained_dofs, const cpppetsc::Mesh & mesh)
Converts a vector of GeneralizedMeshBoundaryCondition s to an affine transform that encodes the boundary conditions. More precisely, the rank of the transform satisfies the boundary conditions.

Detailed Description

Library for minimizing the assembled total energy using PETSc’s solvers or optimizers as provided by cpppetsc.

Public Functions Documentation

function apply

Applies the affine transform to an input vector x and returns the result.

cpppetsc::distributed < cpppetsc::Vector > ae108::solve::apply (
    const AffineTransform & transform,
    const cpppetsc::distributed < cpppetsc::Vector > & x
) 


function apply

Applies the affine transform to an input vector x and writes the result toout .

void ae108::solve::apply (
    const AffineTransform & transform,
    const cpppetsc::distributed < cpppetsc::Vector > & x,
    cpppetsc::distributed < cpppetsc::Vector > *const out
) 


function boundaryConditionsToEquations

Converts a vector of GeneralizedMeshBoundaryCondition s to a matrixA and a vectorb that encodes the boundary conditions. The boundary conditions are satisfied forx if and only ifAx + b = 0 .

AffineTransform ae108::solve::boundaryConditionsToEquations (
    const std::vector< cpppetsc::GeneralizedConstrainedDOFs > & boundaryConditions,
    const cpppetsc::Mesh & mesh
) 

Exception:


function boundaryConditionsToTransform

Converts a vector of GeneralizedMeshBoundaryCondition s to an affine transform that encodes the boundary conditions. More precisely, the rank of the transform satisfies the boundary conditions.

AffineTransform ae108::solve::boundaryConditionsToTransform (
    const std::vector< cpppetsc::GeneralizedConstrainedDOFs > & constrained_dofs,
    const cpppetsc::Mesh & mesh
) 

Exception:



The documentation for this class was generated from the following file solve/src/include/ae108/solve/AffineTransform.h