MAST
element_property_card_1D.cpp
Go to the documentation of this file.
1 /*
2  * MAST: Multidisciplinary-design Adaptation and Sensitivity Toolkit
3  * Copyright (C) 2013-2019 Manav Bhatia
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  */
19 
20 // MAST includes
22 #include "mesh/geom_elem.h"
23 
26  // for an EDGE2 element, default bending is Bernoulli. For all other elements
27  // the default is Timoshenko. Otherwise it returns the model set for
28  // this card.
29  switch (elem.get_reference_elem().type()) {
30  case libMesh::EDGE2:
31  // assuming that all variables have the same interpolation
32  if ((elem.get_fe_type(0).family == libMesh::LAGRANGE) &&
33  (elem.get_fe_type(0).order == libMesh::FIRST) &&
35  return MAST::BERNOULLI;
36  else
37  return MAST::TIMOSHENKO;
38  break;
39 
40  default:
42  return MAST::TIMOSHENKO;
43  else
44  return _bending_model;
45  break;
46  }
47 }
48 
MAST::BendingOperatorType _bending_model
material property card.
virtual MAST::BendingOperatorType bending_model(const MAST::GeomElem &elem) const
returns the bending model to be used for the 2D element.
virtual const libMesh::Elem & get_reference_elem() const
Definition: geom_elem.cpp:54
libMesh::FEType get_fe_type(unsigned int i) const
Definition: geom_elem.cpp:110
This class acts as a wrapper around libMesh::Elem for the purpose of providing a uniform interface fo...
Definition: geom_elem.h:59
BendingOperatorType