FlatPlate Class Reference

Flat plate in x-y plane. More...

+ Inheritance diagram for FlatPlate:

Public Member Functions

 FlatPlate ()
 Constructor: More...
 
 FlatPlate (const FlatPlate &node)
 Broken copy constructor. More...
 
void operator= (const FlatPlate &)
 Broken assignment operator. More...
 
void position (const Vector< double > &zeta, Vector< double > &r) const
 Position vector. More...
 
void position (const unsigned &t, const Vector< double > &zeta, Vector< double > &r) const
 Position vector (dummy unsteady version returns steady version) More...
 
virtual unsigned ngeom_data () const
 How many items of Data does the shape of the object depend on? More...
 
void d2position (const Vector< double > &zeta, Vector< double > &r, DenseMatrix< double > &drdzeta, RankThreeTensor< double > &ddrdzeta) const
 Position Vector and 1st and 2nd derivs w.r.t. zeta. More...
 
- Public Member Functions inherited from oomph::GeomObject
 GeomObject ()
 Default constructor. More...
 
 GeomObject (const unsigned &ndim)
 
 GeomObject (const unsigned &nlagrangian, const unsigned &ndim)
 
 GeomObject (const unsigned &nlagrangian, const unsigned &ndim, TimeStepper *time_stepper_pt)
 
 GeomObject (const GeomObject &dummy)=delete
 Broken copy constructor. More...
 
void operator= (const GeomObject &)=delete
 Broken assignment operator. More...
 
virtual ~GeomObject ()
 (Empty) destructor More...
 
unsigned nlagrangian () const
 Access function to # of Lagrangian coordinates. More...
 
unsigned ndim () const
 Access function to # of Eulerian coordinates. More...
 
void set_nlagrangian_and_ndim (const unsigned &n_lagrangian, const unsigned &n_dim)
 Set # of Lagrangian and Eulerian coordinates. More...
 
TimeStepper *& time_stepper_pt ()
 
TimeSteppertime_stepper_pt () const
 
virtual Datageom_data_pt (const unsigned &j)
 
virtual void position (const double &t, const Vector< double > &zeta, Vector< double > &r) const
 
virtual void dposition_dt (const Vector< double > &zeta, const unsigned &j, Vector< double > &drdt)
 
virtual void dposition (const Vector< double > &zeta, DenseMatrix< double > &drdzeta) const
 
virtual void d2position (const Vector< double > &zeta, RankThreeTensor< double > &ddrdzeta) const
 
virtual void locate_zeta (const Vector< double > &zeta, GeomObject *&sub_geom_object_pt, Vector< double > &s, const bool &use_coordinate_as_initial_guess=false)
 
virtual void interpolated_zeta (const Vector< double > &s, Vector< double > &zeta) const
 

Additional Inherited Members

- Protected Attributes inherited from oomph::GeomObject
unsigned NLagrangian
 Number of Lagrangian (intrinsic) coordinates. More...
 
unsigned Ndim
 Number of Eulerian coordinates. More...
 
TimeStepperGeom_object_time_stepper_pt
 

Detailed Description

Flat plate in x-y plane.

//////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////

Constructor & Destructor Documentation

◆ FlatPlate() [1/2]

FlatPlate::FlatPlate ( )
inline

Constructor:

55 : GeomObject(2,3) {}
GeomObject()
Default constructor.
Definition: geom_objects.h:104

◆ FlatPlate() [2/2]

FlatPlate::FlatPlate ( const FlatPlate node)
inline

Broken copy constructor.

59  {
60  BrokenCopy::broken_copy("FlatPlate");
61  }
void broken_copy(const std::string &class_name)
Issue error message and terminate execution.
Definition: oomph_utilities.cc:212

References oomph::BrokenCopy::broken_copy().

Member Function Documentation

◆ d2position()

void FlatPlate::d2position ( const Vector< double > &  zeta,
Vector< double > &  r,
DenseMatrix< double > &  drdzeta,
RankThreeTensor< double > &  ddrdzeta 
) const
inlinevirtual

Position Vector and 1st and 2nd derivs w.r.t. zeta.

Reimplemented from oomph::GeomObject.

96  {
97  //Flat plate
98  r[0] = zeta[0];
99  r[1] = zeta[1];
100  r[2] = 0.0;
101 
102  //Do the zeta0 derivatives
103  drdzeta(0,0) = 1.0;
104  drdzeta(0,1) = 0.0;
105  drdzeta(0,2) = 0.0;
106 
107  //Do the zeta 1 derivatives
108  drdzeta(1,0) = 0.0;
109  drdzeta(1,1) = 1.0;
110  drdzeta(1,2) = 0.0;
111 
112  //Now let's do the second derivatives
113  ddrdzeta(0,0,0) = 0.0;
114  ddrdzeta(0,0,1) = 0.0;
115  ddrdzeta(0,0,2) = 0.0;
116 
117  ddrdzeta(1,1,0) = 0.0;
118  ddrdzeta(1,1,1) = 0.0;
119  ddrdzeta(1,1,2) = 0.0;
120 
121  //Mixed derivatives
122  ddrdzeta(0,1,0) = 0.0;
123  ddrdzeta(0,1,1) = 0.0;
124  ddrdzeta(0,1,2) = 0.0;
125  }
EIGEN_STRONG_INLINE const Eigen::CwiseBinaryOp< Eigen::internal::scalar_zeta_op< typename DerivedX::Scalar >, const DerivedX, const DerivedQ > zeta(const Eigen::ArrayBase< DerivedX > &x, const Eigen::ArrayBase< DerivedQ > &q)
Definition: SpecialFunctionsArrayAPI.h:152
r
Definition: UniformPSDSelfTest.py:20

References UniformPSDSelfTest::r, and Eigen::zeta().

◆ ngeom_data()

virtual unsigned FlatPlate::ngeom_data ( ) const
inlinevirtual

How many items of Data does the shape of the object depend on?

Reimplemented from oomph::GeomObject.

88  {
89  return 0;
90  }

◆ operator=()

void FlatPlate::operator= ( const FlatPlate )
inline

Broken assignment operator.

65  {
66  BrokenCopy::broken_assign("FlatPlate");
67  }
void broken_assign(const std::string &class_name)
Issue error message and terminate execution.
Definition: oomph_utilities.cc:195

References oomph::BrokenCopy::broken_assign().

◆ position() [1/2]

void FlatPlate::position ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r 
) const
inlinevirtual

Position vector (dummy unsteady version returns steady version)

Reimplemented from oomph::GeomObject.

82  {
83  position(zeta,r);
84  }
void position(const Vector< double > &zeta, Vector< double > &r) const
Position vector.
Definition: plate.cc:70

References UniformPSDSelfTest::r, and Eigen::zeta().

◆ position() [2/2]

void FlatPlate::position ( const Vector< double > &  zeta,
Vector< double > &  r 
) const
inlinevirtual

Position vector.

Implements oomph::GeomObject.

71  {
72  r[0]=zeta[0];
73  r[1]=zeta[1];
74  r[2]=0.0;
75  }

References UniformPSDSelfTest::r, and Eigen::zeta().


The documentation for this class was generated from the following file: