25 #ifndef GRINS_ELASTIC_CABLE_H
26 #define GRINS_ELASTIC_CABLE_H
33 #include "libmesh/fe_base.h"
37 template<
typename StressStrainLaw>
67 const libMesh::Point& point,
68 libMesh::Real& value );
75 libMesh::AutoPtr<libMesh::FEGenericBase<libMesh::Real> >
build_new_fe(
const libMesh::Elem& elem,
76 const libMesh::FEGenericBase<libMesh::Real>* fe,
77 const libMesh::Point p );
80 const libMesh::FEBase& elem,
82 const libMesh::Gradient& grad_u,
83 const libMesh::Gradient& grad_v,
84 const libMesh::Gradient& grad_w,
89 libMesh::Real& lambda_sq);
void compute_metric_tensors(unsigned int qp, const libMesh::FEBase &elem, const AssemblyContext &context, const libMesh::Gradient &grad_u, const libMesh::Gradient &grad_v, const libMesh::Gradient &grad_w, libMesh::TensorValue< libMesh::Real > &a_cov, libMesh::TensorValue< libMesh::Real > &a_contra, libMesh::TensorValue< libMesh::Real > &A_cov, libMesh::TensorValue< libMesh::Real > &A_contra, libMesh::Real &lambda_sq)
std::vector< unsigned int > _force_indices
Index from registering this quantity. Each component will have it's own index.
virtual void compute_postprocessed_quantity(unsigned int quantity_index, const AssemblyContext &context, const libMesh::Point &point, libMesh::Real &value)
Compute the registered postprocessed quantities.
virtual void side_time_derivative(bool compute_jacobian, AssemblyContext &context, CachedValues &cache)
Time dependent part(s) of physics for boundaries of elements on the domain boundary.
virtual void register_postprocessing_vars(const GetPot &input, PostProcessedQuantities< libMesh::Real > &postprocessing)
Register postprocessing variables for ElasticCable.
StressStrainLaw _stress_strain_law
std::vector< unsigned int > _stress_indices
Index from registering this quantity. Each component will have it's own index.
std::vector< unsigned int > _strain_indices
Index from registering this quantity. Each component will have it's own index.
virtual void mass_residual(bool compute_jacobian, AssemblyContext &context, CachedValues &cache)
Mass matrix part(s) for element interiors. All boundary terms lie within the time_derivative part...
virtual void element_time_derivative(bool compute_jacobian, AssemblyContext &context, CachedValues &cache)
Time dependent part(s) of physics for element interiors.
libMesh::AutoPtr< libMesh::FEGenericBase< libMesh::Real > > build_new_fe(const libMesh::Elem &elem, const libMesh::FEGenericBase< libMesh::Real > *fe, const libMesh::Point p)