Physics
General methods and abstract types
Cthonios.AbstractPhysics
— Typeabstract type AbstractPhysics{NF, NP, NS}
NF
- Number of fields in this physics
NP
- Number of properties in this physics
NS
- Number of states in this physics
Cthonios.num_fields
— Methodnum_fields(_::Cthonios.AbstractPhysics{NF, NP, NS}) -> Any
Cthonios.num_properties
— Methodnum_properties(
_::Cthonios.AbstractPhysics{NF, NP, NS}
) -> Any
Cthonios.num_states
— Methodnum_states(_::Cthonios.AbstractPhysics{NF, NP, NS}) -> Any
Cthonios.reshape_field
— Methodcomes in as (Nnodes x nfields) vector returns as nfields x nnodes matrix
Lagrangian Solid Mechanics
Cthonios.SolidMechanics
— Typestruct SolidMechanics{NF, NP, NS, Mat, Form, P<:Cthonios.StressDivergence{NF, NP, NS, Mat, Form}} <: Cthonios.AbstractPhysics{NF, NP, NS}
material_model::Any
formulation::Any
stress_divergence::Cthonios.StressDivergence{NF, NP, NS, Mat, Form} where {NF, NP, NS, Mat, Form}
Cthonios.energy
— Methodenergy(
physics::SolidMechanics,
u::AbstractArray,
∇u,
X,
t,
Z,
props
) -> Any
Energy method at the quadrature level for Lagrangian solid mechanics. This equivalent to the quadrature point calculation needed for the following integral $\Pi = \int_\Omega\psi\left(\mathbf{F}\right)d\Omega$
Cthonios.gradient
— Methodgradient(
physics::SolidMechanics,
u,
∇u,
v,
∇v,
X,
t,
Z,
props
) -> Any
Gradient method at the quadrature level for Lagrangian solid mechanics. This equivalent to the quadrature point calculation needed for the following integral $\mathbf{f} = \int_\Omega\mathbf{P}:\delta\mathbf{F}d\Omega$
Cthonios.hessian
— Methodhessian(
physics::SolidMechanics,
u,
∇u,
v,
∇v,
X,
t,
Z,
props
) -> Any
Poisson
Cthonios.Poisson
— Typestruct Poisson{Form, S} <: Cthonios.AbstractPhysics{1, 0, 0}
formulation::Any
laplacian::Cthonios.Laplacian{1}
source::Any
TODO create source term kernel
Cthonios.energy
— Methodenergy(
physics::Poisson,
u::AbstractArray,
∇u,
X,
t,
Z,
props
) -> Any
Energy method for Poisson equation at a quadrature point $\Pi\left[u\right] = \int_\Omega \left[\frac{1}{2}\|\nabla u\|^2 - fu\right]d\Omega$
Cthonios.gradient
— Methodgradient(
physics::Poisson,
u,
∇u,
v,
∇v,
X,
t,
Z,
props
) -> Any
Gradient method for Poisson equation at a quadrature point $g\left(u, v\right) = \int_\Omega \left[\nabla u\cdot\nabla v - fv\right]d\Omega$
Cthonios.hessian
— Methodhessian(
physics::Poisson,
u,
∇u,
v,
∇v,
X,
t,
Z,
props
) -> Any
Hessian method for Poisson equation at a quadrature point $H\left(u, v\right) = \int_\Omega \left[\nabla v\cdot\nabla v\right]d\Omega$