oomph::ElementWithMortaringStatusAtNodes< ELEMENT > Class Template Reference

#include <element_with_mortaring_status_at_nodes.h>

+ Inheritance diagram for oomph::ElementWithMortaringStatusAtNodes< ELEMENT >:

Public Member Functions

 ElementWithMortaringStatusAtNodes ()
 
void set_output_mortared_status ()
 
void set_do_not_output_mortared_status ()
 
unsigned required_nvalue (const unsigned &n) const override
 
unsigned mortared_dof_index (const unsigned &n) const
 
double mortared_status (const unsigned &n) const
 
void set_mortared (const unsigned &n, const double &mortared_status=1.0)
 
void set_not_mortared (const unsigned &n, const double &mortared_status=0.0)
 
void pin_mortared_status_of_all_nodes ()
 
unsigned ncont_interpolated_values () const
 
double get_interpolated_mortared_status (const Vector< double > &s)
 
void get_interpolated_values (const Vector< double > &s, Vector< double > &values)
 
void get_interpolated_values (const unsigned &t, const Vector< double > &s, Vector< double > &values)
 
void output (std::ostream &outfile, const unsigned &nplot)
 
void further_build ()
 

Protected Member Functions

const double get_output_mortared_status () const
 

Private Attributes

bool Output_Mortared_Status
 

Constructor & Destructor Documentation

◆ ElementWithMortaringStatusAtNodes()

template<class ELEMENT >
oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::ElementWithMortaringStatusAtNodes ( )
inline
31  : ELEMENT(),
32  Output_Mortared_Status(false) {}
bool Output_Mortared_Status
Definition: element_with_mortaring_status_at_nodes.h:164

Member Function Documentation

◆ further_build()

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::further_build ( )
inline
152  {
153  ELEMENT::further_build();
154  Output_Mortared_Status = dynamic_cast<ElementWithMortaringStatusAtNodes<ELEMENT>*>(this->father_element_pt())->get_output_mortared_status();
155  }
const double get_output_mortared_status() const
Definition: element_with_mortaring_status_at_nodes.h:158

References oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_output_mortared_status(), and oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::Output_Mortared_Status.

◆ get_interpolated_mortared_status()

template<class ELEMENT >
double oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_interpolated_mortared_status ( const Vector< double > &  s)
inline
86  {
87  double value = 0.0;
88  // Find out how many nodes there are
89  unsigned n_node = this->nnode();
90 
91  // Shape functions
92  Shape psif(n_node);
93  this->shape(s, psif);
94  for (unsigned l = 0; l < n_node; l++)
95  {
96  value += this->mortared_status(l) * psif[l];
97  }
98  return value;
99  }
double mortared_status(const unsigned &n) const
Definition: element_with_mortaring_status_at_nodes.h:54
squared absolute value
Definition: GlobalFunctions.h:87
void shape(const double &s, double *Psi)
Definition: shape.h:564

References oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::mortared_status(), oomph::OneDimLagrange::shape(), and Eigen::value.

Referenced by oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_interpolated_values(), and oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::output().

◆ get_interpolated_values() [1/2]

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_interpolated_values ( const unsigned t,
const Vector< double > &  s,
Vector< double > &  values 
)
inline
110  {
111  ELEMENT::get_interpolated_values(t, s,values);
112  values.push_back(get_interpolated_mortared_status(s));
113  }
double get_interpolated_mortared_status(const Vector< double > &s)
Definition: element_with_mortaring_status_at_nodes.h:85
RealScalar s
Definition: level1_cplx_impl.h:130
t
Definition: plotPSD.py:36

References oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_interpolated_mortared_status(), s, and plotPSD::t.

◆ get_interpolated_values() [2/2]

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_interpolated_values ( const Vector< double > &  s,
Vector< double > &  values 
)
inline
102  {
103  ELEMENT::get_interpolated_values(s,values);
104  values.push_back(get_interpolated_mortared_status(s));
105  }

References oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_interpolated_mortared_status(), and s.

◆ get_output_mortared_status()

template<class ELEMENT >
const double oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_output_mortared_status ( ) const
inlineprotected

◆ mortared_dof_index()

template<class ELEMENT >
unsigned oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::mortared_dof_index ( const unsigned n) const
inline

◆ mortared_status()

template<class ELEMENT >
double oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::mortared_status ( const unsigned n) const
inline

◆ ncont_interpolated_values()

template<class ELEMENT >
unsigned oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::ncont_interpolated_values ( ) const
inline
81  {
82  return ELEMENT::ncont_interpolated_values() + 1;
83  }

◆ output()

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::output ( std::ostream &  outfile,
const unsigned nplot 
)
inline
116  {
118  {
119  // vector of local coordinates
120  Vector<double> s(this->dim());
121 
122  // Tecplot header info
123  outfile << this->tecplot_zone_string(nplot);
124 
125  // Loop over plot points
126  unsigned num_plot_points = this->nplot_points(nplot);
127  for (unsigned iplot = 0; iplot < num_plot_points; iplot++)
128  {
129  // Get local coordinates of plot point
130  this->get_s_plot(iplot, nplot, s);
131 
132  for (unsigned i = 0; i < this->dim(); i++)
133  {
134  outfile << this->interpolated_x(s, i) << " ";
135  }
136 
138  outfile << std::endl;
139  }
140  outfile << std::endl;
141  // Write tecplot footer (e.g. FE connectivity lists)
142  this->write_tecplot_zone_footer(outfile, nplot);
143  }
144  else
145  {
146  ELEMENT::output(outfile, nplot);
147  }
148  }
int i
Definition: BiCGSTAB_step_by_step.cpp:9
void output(std::ostream &outfile, const unsigned &nplot)
Overload output function.
Definition: overloaded_element_body.h:490

References oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::get_interpolated_mortared_status(), i, output(), oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::Output_Mortared_Status, and s.

◆ pin_mortared_status_of_all_nodes()

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::pin_mortared_status_of_all_nodes ( )
inline
73  {
74  for(unsigned n=0; n<this->nnode(); n++)
75  {
76  this->node_pt(n)->pin(mortared_dof_index(n));
77  }
78  }

References oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::mortared_dof_index(), and n.

◆ required_nvalue()

template<class ELEMENT >
unsigned oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::required_nvalue ( const unsigned n) const
inlineoverride
44  {
45  return ELEMENT::required_nvalue(n) + 1;
46  }

References n.

Referenced by oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::mortared_dof_index().

◆ set_do_not_output_mortared_status()

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::set_do_not_output_mortared_status ( )
inline

◆ set_mortared()

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::set_mortared ( const unsigned n,
const double mortared_status = 1.0 
)
inline

◆ set_not_mortared()

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::set_not_mortared ( const unsigned n,
const double mortared_status = 0.0 
)
inline

◆ set_output_mortared_status()

template<class ELEMENT >
void oomph::ElementWithMortaringStatusAtNodes< ELEMENT >::set_output_mortared_status ( )
inline

Member Data Documentation

◆ Output_Mortared_Status


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