56 libmesh_assert_greater(
_sigma0, 0.);
69 std::map<const libMesh::dof_id_type, std::vector<MAST::StressStrainOutputBase::Data*> >::const_iterator
73 for ( ; map_it != map_end; map_it++) {
75 std::vector<MAST::StressStrainOutputBase::Data*>::const_iterator
76 vec_it = map_it->second.begin(),
77 vec_end = map_it->second.end();
79 for ( ; vec_it != vec_end; vec_it++) {
82 e_val = (*vec_it)->von_Mises_stress();
83 JxW = (*vec_it)->quadrature_point_JxW();
107 const libMesh::dof_id_type e_id,
108 Real& dsigma_vm_val_df)
const {
112 libmesh_assert_greater(
_sigma0, 0.);
119 dsigma_vm_val_df = 0.;
122 std::map<const libMesh::dof_id_type, std::vector<MAST::StressStrainOutputBase::Data*> >::const_iterator
126 libmesh_assert(map_it != map_end);
128 std::vector<MAST::StressStrainOutputBase::Data*>::const_iterator
129 vec_it = map_it->second.begin(),
130 vec_end = map_it->second.end();
132 for ( ; vec_it != vec_end; vec_it++) {
135 e_val = (*vec_it)->von_Mises_stress();
136 de_val = (*vec_it)->dvon_Mises_stress_dp(f);
137 JxW = (*vec_it)->quadrature_point_JxW();
152 const libMesh::dof_id_type e_id,
153 Real& dsigma_vm_val_df)
const {
157 libmesh_assert_greater(
_sigma0, 0.);
163 dsigma_vm_val_df = 0.;
166 std::map<const libMesh::dof_id_type, std::vector<MAST::StressStrainOutputBase::Data*> >::const_iterator
170 libmesh_assert(map_it != map_end);
172 std::vector<MAST::StressStrainOutputBase::Data*>::const_iterator
173 vec_it = map_it->second.begin(),
174 vec_end = map_it->second.end();
176 for ( ; vec_it != vec_end; vec_it++) {
179 e_val = (*vec_it)->von_Mises_stress();
180 JxW_Vn = (*vec_it)->quadrature_point_JxW();
195 libmesh_assert_greater(
_sigma0, 0.);
202 de_val = RealVectorX::Zero(dq_dX.size());
208 std::map<const libMesh::dof_id_type, std::vector<MAST::StressStrainOutputBase::Data*> >::const_iterator
213 libmesh_assert(map_it != map_end);
215 std::vector<MAST::StressStrainOutputBase::Data*>::const_iterator
216 vec_it = map_it->second.begin(),
217 vec_end = map_it->second.end();
220 for ( ; vec_it != vec_end; vec_it++) {
223 e_val = (*vec_it)->von_Mises_stress();
224 de_val = (*vec_it)->dvon_Mises_stress_dX();
225 JxW = (*vec_it)->quadrature_point_JxW();
MAST::NonlinearSystem & system()
Data structure provides the mechanism to store stress and strain output from a structural analysis...
std::map< const libMesh::dof_id_type, std::vector< MAST::StressStrainOutputBase::Data * > > _boundary_stress_data
vector of stress with the associated location details
Real _sigma0
reference stress value used in scaling volume.
bool _primal_data_initialized
primal data, needed for sensitivity and adjoints
Real _p_norm_stress
norm to be used for calculation of output stress function.
SmoothRampStressStrainOutput()
default constructor
std::map< const libMesh::dof_id_type, std::vector< MAST::StressStrainOutputBase::Data * > > _stress_data
vector of stress with the associated location details
virtual void functional_state_derivartive_for_elem(const libMesh::dof_id_type e_id, RealVectorX &dq_dX) const
calculates and returns the derivative of von Mises p-norm functional wrt state vector for the specifi...
Matrix< Real, Dynamic, 1 > RealVectorX
virtual void functional_sensitivity_for_elem(const MAST::FunctionBase &f, const libMesh::dof_id_type e_id, Real &dsigma_vm_val_df) const
calculates and returns the sensitivity of von Mises p-norm functional for the element e...
virtual void functional_boundary_sensitivity_for_elem(const MAST::FunctionBase &f, const libMesh::dof_id_type e_id, Real &dsigma_vm_val_df) const
calculates and returns the boundary sensitivity of von Mises p-norm functional for the element e...
virtual ~SmoothRampStressStrainOutput()
bool _if_stress_plot_mode
identifies the mode in which evaluation is peformed.
virtual void functional_for_all_elems()
calculates and returns the von Mises p-norm functional for all the elements that this object currentl...
MAST::SystemInitialization * _system