A Generalised Element class. More...
#include <elements.h>
Public Member Functions | |
GeneralisedElement() | GeneralisedElement (const GeneralisedElement &)=delete |
Constructor: Initialise all pointers and all values to zero. More... | |
void | operator= (const GeneralisedElement &)=delete |
Broken assignment operator. More... | |
Data *& | internal_data_pt (const unsigned &i) |
Return a pointer to i-th internal data object. More... | |
Data *const & | internal_data_pt (const unsigned &i) const |
Return a pointer to i-th internal data object (const version) More... | |
Data *& | external_data_pt (const unsigned &i) |
Return a pointer to i-th external data object. More... | |
Data *const & | external_data_pt (const unsigned &i) const |
Return a pointer to i-th external data object (const version) More... | |
unsigned long | eqn_number (const unsigned &ieqn_local) const |
Return the global equation number corresponding to the ieqn_local-th local equation number. More... | |
int | local_eqn_number (const unsigned long &ieqn_global) const |
Return the local equation number corresponding to the ieqn_global-th global equation number. Returns minus one (-1) if there is no local degree of freedom corresponding to the chosen global equation number. More... | |
unsigned | add_external_data (Data *const &data_pt, const bool &fd=true) |
Add a (pointer to an) external data object to the element and return its index (i.e. the index required to obtain it from the access function external_data_pt(...) . The optional boolean flag indicates whether the data should be included in the general finite-difference loop when calculating the jacobian. The default value is true, i.e. the data will be included in the finite-differencing. More... | |
bool | external_data_fd (const unsigned &i) const |
Return the status of the boolean flag indicating whether the external data is included in the finite difference loop. More... | |
void | exclude_external_data_fd (const unsigned &i) |
Set the boolean flag to exclude the external datum from the the finite difference loop when computing the jacobian matrix. More... | |
void | include_external_data_fd (const unsigned &i) |
Set the boolean flag to include the external datum in the the finite difference loop when computing the jacobian matrix. More... | |
void | flush_external_data () |
Flush all external data. More... | |
void | flush_external_data (Data *const &data_pt) |
Flush the object addressed by data_pt from the external data array. More... | |
unsigned | ninternal_data () const |
Return the number of internal data objects. More... | |
unsigned | nexternal_data () const |
Return the number of external data objects. More... | |
unsigned | ndof () const |
Return the number of equations/dofs in the element. More... | |
void | dof_vector (const unsigned &t, Vector< double > &dof) |
Return the vector of dof values at time level t. More... | |
void | dof_pt_vector (Vector< double * > &dof_pt) |
Return the vector of pointers to dof values. More... | |
void | set_internal_data_time_stepper (const unsigned &i, TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data) |
Set the timestepper associated with the i-th internal data object. More... | |
void | assign_internal_eqn_numbers (unsigned long &global_number, Vector< double * > &Dof_pt) |
Assign the global equation numbers to the internal Data. The arguments are the current highest global equation number (which will be incremented) and a Vector of pointers to the global variables (to which any unpinned values in the internal Data are added). More... | |
void | describe_dofs (std::ostream &out, const std::string ¤t_string) const |
Function to describe the dofs of the element. The ostream specifies the output stream to which the description is written; the string stores the currently assembled output that is ultimately written to the output stream by Data::describe_dofs(...); it is typically built up incrementally as we descend through the call hierarchy of this function when called from Problem::describe_dofs(...) More... | |
virtual void | describe_local_dofs (std::ostream &out, const std::string ¤t_string) const |
Function to describe the local dofs of the element. The ostream specifies the output stream to which the description is written; the string stores the currently assembled output that is ultimately written to the output stream by Data::describe_dofs(...); it is typically built up incrementally as we descend through the call hierarchy of this function when called from Problem::describe_dofs(...) More... | |
void | add_internal_value_pt_to_map (std::map< unsigned, double * > &map_of_value_pt) |
Add pointers to the internal data values to map indexed by the global equation number. More... | |
void | add_internal_data_values_to_vector (Vector< double > &vector_of_values) |
Add all internal data and time history values to the vector in the internal storage order. More... | |
void | read_internal_data_values_from_vector (const Vector< double > &vector_of_values, unsigned &index) |
Read all internal data and time history values from the vector starting from index. On return the index will be set to the value at the end of the data that has been read in. More... | |
void | add_internal_eqn_numbers_to_vector (Vector< long > &vector_of_eqn_numbers) |
Add all equation numbers associated with internal data to the vector in the internal storage order. More... | |
void | read_internal_eqn_numbers_from_vector (const Vector< long > &vector_of_eqn_numbers, unsigned &index) |
Read all equation numbers associated with internal data from the vector starting from index. On return the index will be set to the value at the end of the data that has been read in. More... | |
virtual void | assign_local_eqn_numbers (const bool &store_local_dof_pt) |
Setup the arrays of local equation numbers for the element. If the optional boolean argument is true, then pointers to the associated degrees of freedom are stored locally in the array Dof_pt. More... | |
virtual void | complete_setup_of_dependencies () |
Complete the setup of any additional dependencies that the element may have. Empty virtual function that may be overloaded for specific derived elements. Used, e.g., for elements with algebraic node update functions to determine the "geometric
Data", i.e. the Data that affects the element's shape. This function is called (for all elements) at the very beginning of the equation numbering procedure to ensure that all dependencies are accounted for. More... | |
virtual void | get_residuals (Vector< double > &residuals) |
Calculate the vector of residuals of the equations in the element. By default initialise the vector to zero and then call the fill_in_contribution_to_residuals() function. Note that this entire function can be overloaded if desired. More... | |
virtual void | get_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
Calculate the elemental Jacobian matrix "d equation / d
variable". More... | |
virtual void | get_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &mass_matrix) |
Calculate the residuals and the elemental "mass" matrix, the matrix that multiplies the time derivative terms in a problem. More... | |
virtual void | get_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
Calculate the residuals and jacobian and elemental "mass" matrix, the matrix that multiplies the time derivative terms. More... | |
virtual void | get_dresiduals_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam) |
Calculate the derivatives of the residuals with respect to a parameter. More... | |
virtual void | get_djacobian_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam) |
Calculate the derivatives of the elemental Jacobian matrix and residuals with respect to a parameter. More... | |
virtual void | get_djacobian_and_dmass_matrix_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam, DenseMatrix< double > &dmass_matrix_dparam) |
Calculate the derivatives of the elemental Jacobian matrix mass matrix and residuals with respect to a parameter. More... | |
virtual void | get_hessian_vector_products (Vector< double > const &Y, DenseMatrix< double > const &C, DenseMatrix< double > &product) |
Calculate the product of the Hessian (derivative of Jacobian with respect to all variables) an eigenvector, Y, and other specified vectors, C (d(J_{ij})/d u_{k}) Y_{j} C_{k}. More... | |
virtual void | get_inner_products (Vector< std::pair< unsigned, unsigned >> const &history_index, Vector< double > &inner_product) |
Return the vector of inner product of the given pairs of history values. More... | |
virtual void | get_inner_product_vectors (Vector< unsigned > const &history_index, Vector< Vector< double >> &inner_product_vector) |
Compute the vectors that when taken as a dot product with other history values give the inner product over the element. More... | |
virtual unsigned | self_test () |
Self-test: Have all internal values been classified as pinned/unpinned? Return 0 if OK. More... | |
virtual void | compute_norm (Vector< double > &norm) |
Compute norm of solution – broken virtual can be overloaded by element writer to implement whatever norm is desired for the specific element. More... | |
virtual void | compute_norm (double &norm) |
Compute norm of solution – broken virtual can be overloaded by element writer to implement whatever norm is desired for the specific element. More... | |
void | set_halo (const unsigned &non_halo_proc_ID) |
Label the element as halo and specify processor that holds non-halo counterpart. More... | |
void | set_nonhalo () |
Label the element as not being a halo. More... | |
bool | is_halo () const |
Is this element a halo? More... | |
int | non_halo_proc_ID () |
ID of processor ID that holds non-halo counterpart of halo element; negative if not a halo. More... | |
void | set_must_be_kept_as_halo () |
Insist that this element be kept as a halo element during a distribute? More... | |
void | unset_must_be_kept_as_halo () |
Do not insist that this element be kept as a halo element during distribution. More... | |
bool | must_be_kept_as_halo () const |
Test whether the element must be kept as a halo element. More... | |
virtual unsigned | ndof_types () const |
The number of types of degrees of freedom in this element are sub-divided into. More... | |
virtual void | get_dof_numbers_for_unknowns (std::list< std::pair< unsigned long, unsigned >> &dof_lookup_list) const |
Create a list of pairs for the unknowns that this element is "in charge of" – ignore any unknowns associated with external Data . The first entry in each pair must contain the global equation number of the unknown, while the second one contains the number of the DOF type that this unknown is associated with. (The function can obviously only be called if the equation numbering scheme has been set up.) More... | |
Static Public Attributes | |
static bool | Suppress_warning_about_repeated_internal_data |
Static boolean to suppress warnings about repeated internal data. Defaults to false. More... | |
static bool | Suppress_warning_about_repeated_external_data = true |
Static boolean to suppress warnings about repeated external data. Defaults to true. More... | |
static double | Default_fd_jacobian_step = 1.0e-8 |
Double used for the default finite difference step in elemental jacobian calculations. More... | |
Protected Member Functions | |
unsigned | add_internal_data (Data *const &data_pt, const bool &fd=true) |
Add a (pointer to an) internal data object to the element and return the index required to obtain it from the access function internal_data_pt() . The boolean indicates whether the datum should be included in the general finite-difference loop when calculating the jacobian. The default value is true, i.e. the data will be included in the finite differencing. More... | |
bool | internal_data_fd (const unsigned &i) const |
Return the status of the boolean flag indicating whether the internal data is included in the finite difference loop. More... | |
void | exclude_internal_data_fd (const unsigned &i) |
Set the boolean flag to exclude the internal datum from the finite difference loop when computing the jacobian matrix. More... | |
void | include_internal_data_fd (const unsigned &i) |
Set the boolean flag to include the internal datum in the finite difference loop when computing the jacobian matrix. More... | |
void | clear_global_eqn_numbers () |
Clear the storage for the global equation numbers and pointers to dofs (if stored) More... | |
void | add_global_eqn_numbers (std::deque< unsigned long > const &global_eqn_numbers, std::deque< double * > const &global_dof_pt) |
Add the contents of the queue global_eqn_numbers to the local storage for the local-to-global translation scheme. It is essential that the entries in the queue are added IN ORDER i.e. from the front. More... | |
virtual void | assign_internal_and_external_local_eqn_numbers (const bool &store_local_dof_pt) |
Assign the local equation numbers for the internal and external Data This must be called after the global equation numbers have all been assigned. It is virtual so that it can be overloaded by ElementWithExternalElements so that any external data from the external elements in included in the numbering scheme. If the boolean argument is true then pointers to the dofs will be stored in Dof_pt. More... | |
virtual void | assign_all_generic_local_eqn_numbers (const bool &store_local_dof_pt) |
Assign all the local equation numbering schemes that can be applied generically for the element. In most cases, this is the function that will be overloaded by inherited classes. It is required to ensure that assign_additional_local_eqn_numbers() can always be called after ALL other local equation numbering has been performed. The default for the GeneralisedElement is simply to call internal and external local equation numbering. If the boolean argument is true then pointers to the dofs will be stored in Dof_pt. More... | |
virtual void | assign_additional_local_eqn_numbers () |
Setup any additional look-up schemes for local equation numbers. Examples of use include using local storage to refer to explicit degrees of freedom. The additional memory cost of such storage may or may not be offset by fast local access. More... | |
int | internal_local_eqn (const unsigned &i, const unsigned &j) const |
Return the local equation number corresponding to the j-th value stored at the i-th internal data. More... | |
int | external_local_eqn (const unsigned &i, const unsigned &j) |
Return the local equation number corresponding to the j-th value stored at the i-th external data. More... | |
virtual void | fill_in_contribution_to_residuals (Vector< double > &residuals) |
Add the elemental contribution to the residuals vector. Note that this function will NOT initialise the residuals vector. It must be called after the residuals vector has been initialised to zero. More... | |
void | fill_in_jacobian_from_internal_by_fd (Vector< double > &residuals, DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
Calculate the contributions to the jacobian from the internal degrees of freedom using finite differences. This version of the function assumes that the residuals vector has already been calculated. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data. More... | |
void | fill_in_jacobian_from_internal_by_fd (DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
Calculate the contributions to the jacobian from the internal degrees of freedom using finite differences. This version computes the residuals vector before calculating the jacobian terms. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data. More... | |
void | fill_in_jacobian_from_external_by_fd (Vector< double > &residuals, DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
Calculate the contributions to the jacobian from the external degrees of freedom using finite differences. This version of the function assumes that the residuals vector has already been calculated. If the boolean argument is true, the finite differencing will be performed for all external data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data. More... | |
void | fill_in_jacobian_from_external_by_fd (DenseMatrix< double > &jacobian, const bool &fd_all_data=false) |
Calculate the contributions to the jacobian from the external degrees of freedom using finite differences. This version computes the residuals vector before calculating the jacobian terms. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data. More... | |
virtual void | update_before_internal_fd () |
Function that is called before the finite differencing of any internal data. This may be overloaded to update any dependent data before finite differencing takes place. More... | |
virtual void | reset_after_internal_fd () |
Function that is call after the finite differencing of the internal data. This may be overloaded to reset any dependent variables that may have changed during the finite differencing. More... | |
virtual void | update_in_internal_fd (const unsigned &i) |
Function called within the finite difference loop for internal data after a change in any values in the i-th internal data object. More... | |
virtual void | reset_in_internal_fd (const unsigned &i) |
Function called within the finite difference loop for internal data after the values in the i-th external data object are reset. The default behaviour is to call the update function. More... | |
virtual void | update_before_external_fd () |
Function that is called before the finite differencing of any external data. This may be overloaded to update any dependent data before finite differencing takes place. More... | |
virtual void | reset_after_external_fd () |
Function that is call after the finite differencing of the external data. This may be overloaded to reset any dependent variables that may have changed during the finite differencing. More... | |
virtual void | update_in_external_fd (const unsigned &i) |
Function called within the finite difference loop for external data after a change in any values in the i-th external data object. More... | |
virtual void | reset_in_external_fd (const unsigned &i) |
Function called within the finite difference loop for external data after the values in the i-th external data object are reset. The default behaviour is to call the update function. More... | |
virtual void | fill_in_contribution_to_jacobian (Vector< double > &residuals, DenseMatrix< double > &jacobian) |
Add the elemental contribution to the jacobian matrix. and the residuals vector. Note that this function will NOT initialise the residuals vector or the jacobian matrix. It must be called after the residuals vector and jacobian matrix have been initialised to zero. The default is to use finite differences to calculate the jacobian. More... | |
virtual void | fill_in_contribution_to_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &mass_matrix) |
Add the elemental contribution to the mass matrix matrix. and the residuals vector. Note that this function should NOT initialise the residuals vector or the mass matrix. It must be called after the residuals vector and jacobian matrix have been initialised to zero. The default is deliberately broken. More... | |
virtual void | fill_in_contribution_to_jacobian_and_mass_matrix (Vector< double > &residuals, DenseMatrix< double > &jacobian, DenseMatrix< double > &mass_matrix) |
Add the elemental contribution to the jacobian matrix, mass matrix and the residuals vector. Note that this function should NOT initialise any entries. It must be called after the residuals vector and matrices have been initialised to zero. More... | |
virtual void | fill_in_contribution_to_dresiduals_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam) |
Add the elemental contribution to the derivatives of the residuals with respect to a parameter. This function should NOT initialise any entries and must be called after the entries have been initialised to zero The default implementation is to use finite differences to calculate the derivatives. More... | |
virtual void | fill_in_contribution_to_djacobian_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam) |
Add the elemental contribution to the derivatives of the elemental Jacobian matrix and residuals with respect to a parameter. This function should NOT initialise any entries and must be called after the entries have been initialised to zero The default implementation is to use finite differences to calculate the derivatives. More... | |
virtual void | fill_in_contribution_to_djacobian_and_dmass_matrix_dparameter (double *const ¶meter_pt, Vector< double > &dres_dparam, DenseMatrix< double > &djac_dparam, DenseMatrix< double > &dmass_matrix_dparam) |
Add the elemental contribution to the derivative of the jacobian matrix, mass matrix and the residuals vector with respect to the passed parameter. Note that this function should NOT initialise any entries. It must be called after the residuals vector and matrices have been initialised to zero. More... | |
virtual void | fill_in_contribution_to_hessian_vector_products (Vector< double > const &Y, DenseMatrix< double > const &C, DenseMatrix< double > &product) |
Fill in contribution to the product of the Hessian (derivative of Jacobian with respect to all variables) an eigenvector, Y, and other specified vectors, C (d(J_{ij})/d u_{k}) Y_{j} C_{k}. More... | |
virtual void | fill_in_contribution_to_inner_products (Vector< std::pair< unsigned, unsigned >> const &history_index, Vector< double > &inner_product) |
Fill in the contribution to the inner products between given pairs of history values. More... | |
virtual void | fill_in_contribution_to_inner_product_vectors (Vector< unsigned > const &history_index, Vector< Vector< double >> &inner_product_vector) |
Fill in the contributions to the vectors that when taken as dot product with other history values give the inner product over the element. More... | |
Protected Attributes | |
int | Non_halo_proc_ID |
Non-halo processor ID for Data; -1 if it's not a halo. More... | |
bool | Must_be_kept_as_halo |
Does this element need to be kept as a halo element during a distribute? More... | |
Static Protected Attributes | |
static DenseMatrix< double > | Dummy_matrix |
Empty dense matrix used as a dummy argument to combined residual and jacobian functions in the case when only the residuals are being assembled. More... | |
static std::deque< double * > | Dof_pt_deque |
Static storage for deque used to add_global_equation_numbers when pointers to the dofs in each element are not required. More... | |
Private Attributes | |
unsigned long * | Eqn_number |
Storage for the global equation numbers represented by the degrees of freedom in the element. More... | |
double ** | Dof_pt |
Storage for array of pointers to degrees of freedom ordered by local equation number. This information is not needed, except in continuation, bifurcation tracking and periodic orbit calculations. It is not set up unless the control flag Problem::Store_local_dof_pts_in_elements = true. More... | |
Data ** | Data_pt |
Storage for pointers to internal and external data. The data is of the same type and so can be addressed by a single pointer. The idea is that the array is of total size Ninternal_data + Nexternal_data. The internal data are stored at the beginning of the array and the external data are stored at the end of the array. More... | |
int ** | Data_local_eqn |
Pointer to array storage for local equation numbers associated with internal and external data. Again, we save storage by using a single pointer to access this information. The first index of the array is of dimension Nineternal_data + Nexternal_data and the second index varies with the number of values stored at the data object. In the most general case, however, the scheme is as memory efficient as possible. More... | |
unsigned | Ndof |
Number of degrees of freedom. More... | |
unsigned | Ninternal_data |
Number of internal data. More... | |
unsigned | Nexternal_data |
Number of external data. More... | |
std::vector< bool > | Data_fd |
Storage for boolean flags of size Ninternal_data + Nexternal_data that correspond to the data used in the element. The flags indicate whether the particular internal or external data should be included in the general finite-difference loop in fill_in_jacobian_from_internal_by_fd() or fill_in_jacobian_from_external_by_fd(). The default is that all data WILL be included in the finite-difference loop, but in many circumstances it is possible to treat certain (external) data analytically. The use of an STL vector is optimal for memory use because the booleans are represented as single-bits. More... | |
A Generalised Element class.
The main components of a GeneralisedElement are:
We also provide interfaces for functions that compute the element's Jacobian matrix and/or the Vector of residuals. In addition, an interface that returns a mass matrix — the matrix of terms that multiply any time derivatives in the problem — is also provided to permit explicit time-stepping and the solution of the generalised eigenproblems.
Definition at line 72 of file elements.h.
|
delete |
Constructor: Initialise all pointers and all values to zero.
Broken copy constructor
unsigned oomph::GeneralisedElement::add_external_data | ( | Data *const & | data_pt, |
const bool & | fd = true |
||
) |
Add a (pointer to an) external data object to the element and return its index (i.e. the index required to obtain it from the access function external_data_pt(...)
. The optional boolean flag indicates whether the data should be included in the general finite-difference loop when calculating the jacobian. The default value is true, i.e. the data will be included in the finite-differencing.
Add a (pointer to an) external data object to the element and return the index required to obtain it from the access function external_data_pt()
Definition at line 307 of file elements.cc.
References Data_fd, Data_pt, external_data_pt(), i, Nexternal_data, Ninternal_data, oomph::oomph_info, and Suppress_warning_about_repeated_external_data.
Referenced by oomph::TemplateFreeNavierStokesFluxControlElementBase::add_pressure_data(), oomph::NavierStokesWomersleyPressureControlElement::add_pressure_data(), oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >::complete_setup_of_dependencies(), oomph::HelmholtzDtNBoundaryElement< ELEMENT >::complete_setup_of_dependencies(), oomph::DisplacementControlElement::DisplacementControlElement(), oomph::HeightControlElement::HeightControlElement(), oomph::ImmersedRigidBodyElement::initialise(), oomph::LinearisedAxisymPoroelasticBJS_FSIElement< FLUID_BULK_ELEMENT, POROELASTICITY_BULK_ELEMENT >::LinearisedAxisymPoroelasticBJS_FSIElement(), oomph::SolidICProblem::reset_original_state(), oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::set_boundary_shape_geom_object_pt(), oomph::ImmersedRigidBodyElement::set_drag_mesh(), oomph::LinearisedNavierStokesEquations::set_eigenfunction_normalisation_element(), oomph::NavierStokesImpedanceTractionElement< BULK_NAVIER_STOKES_ELEMENT, WOMERSLEY_ELEMENT, DIM >::set_external_data_from_navier_stokes_outflow_mesh(), oomph::FluidInterfaceElement::set_external_pressure_data(), oomph::PolarNavierStokesTractionElement< ELEMENT >::set_external_pressure_data(), oomph::YoungLaplaceEquations::set_kappa(), oomph::WomersleyEquations< DIM >::set_pressure_gradient_and_add_as_external_data(), oomph::PseudoBucklingRingElement::set_reference_pressure_pt(), oomph::NavierStokesSurfaceDragTorqueElement< ELEMENT >::set_translation_and_rotation(), oomph::VolumeConstraintBoundingElement::set_volume_constraint_element(), oomph::FoepplvonKarmanEquations::set_volume_constraint_pressure_data_as_external_data(), oomph::DGFaceElement::setup_neighbour_info(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::store_reynolds_strouhal_as_external_data(), oomph::SpaceTimeNavierStokesEquations< DIM >::store_strouhal_as_external_data(), and oomph::VolumeConstraintElement::VolumeConstraintElement().
|
protected |
Add the contents of the queue global_eqn_numbers to the local storage for the local-to-global translation scheme. It is essential that the entries in the queue are added IN ORDER i.e. from the front.
Add the contents of the queue global_eqn_numbers to the local storage for the equation numbers, which represents the local-to-global translation scheme. It is essential that the entries are added in order, i.e. from the front.
Definition at line 156 of file elements.cc.
References Dof_pt, Eqn_number, i, and Ndof.
Referenced by oomph::ElementWithMovingNodes::assign_all_generic_local_eqn_numbers(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), oomph::RefineableElement::assign_hanging_local_eqn_numbers(), assign_internal_and_external_local_eqn_numbers(), oomph::FiniteElement::assign_nodal_local_eqn_numbers(), oomph::RefineableSolidElement::assign_solid_hanging_local_eqn_numbers(), and oomph::SolidFiniteElement::assign_solid_local_eqn_numbers().
|
protected |
Add a (pointer to an) internal data object to the element and return the index required to obtain it from the access function internal_data_pt()
. The boolean indicates whether the datum should be included in the general finite-difference loop when calculating the jacobian. The default value is true, i.e. the data will be included in the finite differencing.
////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////// Add a (pointer to an) internal data object to the element and return the index required to obtain it from the access function internal_data_pt()
Definition at line 62 of file elements.cc.
References Data_fd, Data_pt, i, internal_data_pt(), Nexternal_data, Ninternal_data, oomph::oomph_info, and Suppress_warning_about_repeated_internal_data.
Referenced by oomph::AxisymmetricQCrouzeixRaviartElement::AxisymmetricQCrouzeixRaviartElement(), oomph::AxisymmetricTCrouzeixRaviartElement::AxisymmetricTCrouzeixRaviartElement(), oomph::AxisymQPVDElementWithPressure::AxisymQPVDElementWithPressure(), oomph::ODEElement::build(), oomph::DisplacementControlElement::DisplacementControlElement(), oomph::FoepplvonKarmanVolumeConstraintElement< ELEMENT, MESH >::FoepplvonKarmanVolumeConstraintElement(), oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement(), oomph::GeneralisedNewtonianQCrouzeixRaviartElement< DIM >::GeneralisedNewtonianQCrouzeixRaviartElement(), oomph::GeneralisedNewtonianTCrouzeixRaviartElement< DIM >::GeneralisedNewtonianTCrouzeixRaviartElement(), oomph::HeightControlElement::HeightControlElement(), oomph::ImposeFluxForWomersleyElement< DIM >::ImposeFluxForWomersleyElement(), oomph::ImmersedRigidBodyElement::initialise(), oomph::LinearisedAxisymmetricQCrouzeixRaviartElement::LinearisedAxisymmetricQCrouzeixRaviartElement(), oomph::LinearisedNavierStokesEigenfunctionNormalisationElement::LinearisedNavierStokesEigenfunctionNormalisationElement(), oomph::LinearisedQCrouzeixRaviartElement::LinearisedQCrouzeixRaviartElement(), oomph::NavierStokesWomersleyPressureControlElement::NavierStokesWomersleyPressureControlElement(), oomph::NetFluxControlElement::NetFluxControlElement(), oomph::PolarCrouzeixRaviartElement::PolarCrouzeixRaviartElement(), oomph::PseudoBucklingRingElement::PseudoBucklingRingElement(), oomph::QCrouzeixRaviartElement< DIM >::QCrouzeixRaviartElement(), oomph::QPVDElementWithPressure< DIM >::QPVDElementWithPressure(), oomph::QSphericalCrouzeixRaviartElement::QSphericalCrouzeixRaviartElement(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::TAxisymmetricPoroelasticityElement(), oomph::TCrouzeixRaviartElement< DIM >::TCrouzeixRaviartElement(), oomph::TPoroelasticityElement< ORDER >::TPoroelasticityElement(), oomph::TRaviartThomasDarcyElement< ORDER >::TRaviartThomasDarcyElement(), and oomph::VolumeConstraintElement::VolumeConstraintElement().
void oomph::GeneralisedElement::add_internal_data_values_to_vector | ( | Vector< double > & | vector_of_values | ) |
Add all internal data and time history values to the vector in the internal storage order.
Definition at line 628 of file elements.cc.
References oomph::Data::add_values_to_vector(), i, internal_data_pt(), and Ninternal_data.
Referenced by oomph::Problem::get_data_to_be_sent_during_load_balancing(), and oomph::Problem::synchronise_dofs().
void oomph::GeneralisedElement::add_internal_eqn_numbers_to_vector | ( | Vector< long > & | vector_of_eqn_numbers | ) |
Add all equation numbers associated with internal data to the vector in the internal storage order.
Definition at line 655 of file elements.cc.
References oomph::Data::add_eqn_numbers_to_vector(), i, internal_data_pt(), and Ninternal_data.
Referenced by oomph::Problem::copy_haloed_eqn_numbers_helper().
void oomph::GeneralisedElement::add_internal_value_pt_to_map | ( | std::map< unsigned, double * > & | map_of_value_pt | ) |
Add pointers to the internal data values to map indexed by the global equation number.
This function loops over the internal data of the element and add pointers to their unconstrained values to a map indexed by the global equation number.
Definition at line 611 of file elements.cc.
References oomph::Data::add_value_pt_to_map(), i, internal_data_pt(), and Ninternal_data.
Referenced by oomph::Mesh::get_all_halo_data().
|
inlineprotectedvirtual |
Setup any additional look-up schemes for local equation numbers. Examples of use include using local storage to refer to explicit degrees of freedom. The additional memory cost of such storage may or may not be offset by fast local access.
Reimplemented in oomph::HeightControlElement, oomph::DisplacementControlElement, and oomph::FoepplvonKarmanVolumeConstraintElement< ELEMENT, MESH >.
Definition at line 263 of file elements.h.
Referenced by assign_local_eqn_numbers().
|
inlineprotectedvirtual |
Assign all the local equation numbering schemes that can be applied generically for the element. In most cases, this is the function that will be overloaded by inherited classes. It is required to ensure that assign_additional_local_eqn_numbers() can always be called after ALL other local equation numbering has been performed. The default for the GeneralisedElement is simply to call internal and external local equation numbering. If the boolean argument is true then pointers to the dofs will be stored in Dof_pt.
Reimplemented in oomph::RefineableQSpectralPoissonElement< DIM, NNODE_1D >, oomph::SpectralElement, oomph::FaceElementAsGeomObject< ELEMENT >, oomph::SolidFiniteElement, oomph::FiniteElement, oomph::ElementWithSpecificMovingNodes< ELEMENT, NODE_TYPE >, oomph::ElementWithSpecificMovingNodes< ELEMENT, SpineNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, AlgebraicNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, MacroElementNodeUpdateNode >, and oomph::ElementWithMovingNodes.
Definition at line 253 of file elements.h.
References assign_internal_and_external_local_eqn_numbers().
Referenced by oomph::FiniteElement::assign_all_generic_local_eqn_numbers(), and assign_local_eqn_numbers().
|
protectedvirtual |
Assign the local equation numbers for the internal and external Data This must be called after the global equation numbers have all been assigned. It is virtual so that it can be overloaded by ElementWithExternalElements so that any external data from the external elements in included in the numbering scheme. If the boolean argument is true then pointers to the dofs will be stored in Dof_pt.
This function loops over the internal and external data of the element, adds the GLOBAL equation numbers to the local-to-global look-up scheme and fills in the look-up schemes for the local equation numbers. If the boolean argument is true then pointers to the dofs will be stored in Dof_pt.
Reimplemented in oomph::ElementWithExternalElement.
Definition at line 938 of file elements.cc.
References add_global_eqn_numbers(), Data_local_eqn, Data_pt, Dof_pt_deque, oomph::Data::eqn_number(), eqn_number(), external_data_pt(), i, internal_data_pt(), oomph::Data::Is_pinned, oomph::Data::Is_unclassified, local_eqn_number(), ndof(), Nexternal_data, Ninternal_data, oomph::Data::nvalue(), and oomph::Data::value_pt().
Referenced by assign_all_generic_local_eqn_numbers(), and oomph::ElementWithExternalElement::assign_internal_and_external_local_eqn_numbers().
void oomph::GeneralisedElement::assign_internal_eqn_numbers | ( | unsigned long & | global_number, |
Vector< double * > & | Dof_pt | ||
) |
Assign the global equation numbers to the internal Data. The arguments are the current highest global equation number (which will be incremented) and a Vector of pointers to the global variables (to which any unpinned values in the internal Data are added).
This function loops over the internal data of the element and assigns GLOBAL equation numbers to the data objects.
Pass:
Definition at line 529 of file elements.cc.
References oomph::Data::assign_eqn_numbers(), Dof_pt, i, internal_data_pt(), and Ninternal_data.
|
virtual |
Setup the arrays of local equation numbers for the element. If the optional boolean argument is true, then pointers to the associated degrees of freedom are stored locally in the array Dof_pt.
Setup the arrays of local equation numbers for the element. In general, this function should not need to be overloaded. Instead the function assign_all_generic_local_eqn_numbers() will be overloaded by different types of Element. That said, the function is virtual so that it may be overloaded by the user if they really know what they are doing.
Reimplemented in oomph::Hijacked< SpineElement< FaceGeometry< FaceGeometry< ELEMENT > > > >, and oomph::Hijacked< SpineElement< FaceGeometry< ELEMENT > > >.
Definition at line 691 of file elements.cc.
References assign_additional_local_eqn_numbers(), assign_all_generic_local_eqn_numbers(), clear_global_eqn_numbers(), Eqn_number, oomph::Data::eqn_number(), external_data_pt(), oomph::ElementWithExternalElement::external_interaction_field_data_pt(), oomph::ElementWithExternalElement::external_interaction_geometric_data_pt(), i, internal_data_pt(), is_halo(), oomph::Node::ndim(), Ndof, nexternal_data(), oomph::ElementWithExternalElement::nexternal_interaction_field_data(), oomph::ElementWithExternalElement::nexternal_interaction_geometric_data(), ninternal_data(), oomph::FiniteElement::nnode(), oomph::FiniteElement::node_pt(), oomph::Data::nvalue(), oomph::FiniteElement::required_nvalue(), oomph::Data::value(), oomph::SolidNode::variable_position_pt(), and oomph::Node::x().
|
inlineprotected |
Clear the storage for the global equation numbers and pointers to dofs (if stored)
Definition at line 207 of file elements.h.
References Dof_pt, Eqn_number, and Ndof.
Referenced by assign_local_eqn_numbers().
|
inlinevirtual |
Complete the setup of any additional dependencies that the element may have. Empty virtual function that may be overloaded for specific derived elements. Used, e.g., for elements with algebraic node update functions to determine the "geometric Data", i.e. the Data that affects the element's shape. This function is called (for all elements) at the very beginning of the equation numbering procedure to ensure that all dependencies are accounted for.
Reimplemented in oomph::HelmholtzDtNBoundaryElement< ELEMENT >, oomph::SpineElement< ELEMENT >, oomph::SpineElement< FaceGeometry< ELEMENT > >, oomph::ElementWithSpecificMovingNodes< ELEMENT, NODE_TYPE >, oomph::ElementWithSpecificMovingNodes< ELEMENT, SpineNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, AlgebraicNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, MacroElementNodeUpdateNode >, oomph::ElementWithMovingNodes, and oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >.
Definition at line 974 of file elements.h.
Referenced by oomph::Problem::assign_eqn_numbers().
|
inlinevirtual |
Compute norm of solution – broken virtual can be overloaded by element writer to implement whatever norm is desired for the specific element.
Reimplemented in oomph::UnsteadyHeatEquations< DIM >, oomph::TimeHarmonicLinearElasticityEquations< DIM >, oomph::TimeHarmonicFourierDecomposedLinearElasticityEquations, oomph::SpaceTimeUnsteadyHeatMixedOrderEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::PoissonEquations< DIM >, oomph::PMLTimeHarmonicLinearElasticityEquations< DIM >, oomph::PMLHelmholtzEquations< DIM >, oomph::PMLFourierDecomposedHelmholtzEquations, oomph::NavierStokesEquations< DIM >, oomph::FourierDecomposedHelmholtzEquations, oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >, and oomph::SolidFiniteElement.
Definition at line 1140 of file elements.h.
References oomph::Global_string_for_annotation::string().
|
inlinevirtual |
Compute norm of solution – broken virtual can be overloaded by element writer to implement whatever norm is desired for the specific element.
Reimplemented in oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, and oomph::NavierStokesEquations< DIM >.
Definition at line 1128 of file elements.h.
References oomph::Global_string_for_annotation::string().
Referenced by oomph::Mesh::compute_norm().
void oomph::GeneralisedElement::describe_dofs | ( | std::ostream & | out, |
const std::string & | current_string | ||
) | const |
Function to describe the dofs of the element. The ostream specifies the output stream to which the description is written; the string stores the currently assembled output that is ultimately written to the output stream by Data::describe_dofs(...); it is typically built up incrementally as we descend through the call hierarchy of this function when called from Problem::describe_dofs(...)
Function to describe the dofs of the Element. The ostream specifies the output stream to which the description is written; the string stores the currently assembled output that is ultimately written to the output stream by Data::describe_dofs(...); it is typically built up incrementally as we descend through the call hierarchy of this function when called from Problem::describe_dofs(...)
Definition at line 551 of file elements.cc.
References oomph::Data::describe_dofs(), i, internal_data_pt(), Ninternal_data, and oomph::Global_string_for_annotation::string().
|
virtual |
Function to describe the local dofs of the element. The ostream specifies the output stream to which the description is written; the string stores the currently assembled output that is ultimately written to the output stream by Data::describe_dofs(...); it is typically built up incrementally as we descend through the call hierarchy of this function when called from Problem::describe_dofs(...)
Reimplemented in oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::RefineableQSpectralPoissonElement< DIM, NNODE_1D >, oomph::SpectralElement, oomph::ProjectableElement< ELEMENT >, oomph::ProjectableElement< FVK_ELEMENT >, oomph::ProjectableElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableElement< HELMHOLTZ_ELEMENT >, oomph::ProjectableElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableElement< PVD_ELEMENT >, oomph::ProjectableElement< ADR_ELEMENT >, oomph::ProjectableElement< DARCY_ELEMENT >, oomph::ProjectableElement< POISSON_ELEMENT >, oomph::ProjectableElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::FSIWallElement, oomph::FaceElementAsGeomObject< ELEMENT >, oomph::SolidFiniteElement, oomph::FiniteElement, oomph::ElementWithSpecificMovingNodes< ELEMENT, NODE_TYPE >, oomph::ElementWithSpecificMovingNodes< ELEMENT, SpineNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, AlgebraicNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, MacroElementNodeUpdateNode >, oomph::ElementWithMovingNodes, and oomph::ElementWithExternalElement.
Definition at line 573 of file elements.cc.
References oomph::Data::describe_dofs(), external_data_pt(), i, internal_data_pt(), Nexternal_data, Ninternal_data, and oomph::Global_string_for_annotation::string().
Referenced by oomph::ElementWithExternalElement::describe_local_dofs(), and oomph::FiniteElement::describe_local_dofs().
|
inline |
Return the vector of pointers to dof values.
Definition at line 866 of file elements.h.
References Dof_pt, i, and Ndof.
Referenced by oomph::AssemblyHandler::dof_pt_vector().
|
inline |
Return the vector of dof values at time level t.
Definition at line 841 of file elements.h.
References Dof_pt, i, Ndof, and t.
Referenced by oomph::AssemblyHandler::dof_vector().
|
inline |
Return the global equation number corresponding to the ieqn_local-th local equation number.
Definition at line 704 of file elements.h.
References Eqn_number, and Ndof.
Referenced by oomph::NavierStokesSchurComplementPreconditioner::assemble_inv_press_and_veloc_mass_matrix_diagonal(), oomph::PressureBasedSolidLSCPreconditioner::assemble_mass_matrix_diagonal(), oomph::ElementWithMovingNodes::assign_all_generic_local_eqn_numbers(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), oomph::RefineableElement::assign_hanging_local_eqn_numbers(), assign_internal_and_external_local_eqn_numbers(), oomph::FiniteElement::assign_nodal_local_eqn_numbers(), oomph::RefineableSolidElement::assign_solid_hanging_local_eqn_numbers(), oomph::SolidFiniteElement::assign_solid_local_eqn_numbers(), oomph::AssemblyHandler::eqn_number(), oomph::ExplicitTimeStepHandler::eqn_number(), oomph::EigenProblemHandler::eqn_number(), oomph::FoldHandler::eqn_number(), oomph::PitchForkHandler::eqn_number(), oomph::HopfHandler::eqn_number(), oomph::PeriodicOrbitAssemblyHandler< NNODE_1D >::eqn_number(), oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >::fill_in_generic_residual_contribution_fourier_decomposed_helmholtz_DtN_bc(), oomph::HelmholtzDtNBoundaryElement< ELEMENT >::fill_in_generic_residual_contribution_helmholtz_DtN_bc(), oomph::PeriodicOrbitEquations::fill_in_generic_residual_contribution_orbit(), oomph::FoldHandler::FoldHandler(), oomph::AxisymmetricLinearElasticityEquationsBase::get_dof_numbers_for_unknowns(), oomph::AxisymmetricQCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::AxisymmetricQTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::AxisymmetricTCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::AxisymmetricTTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::FSIHermiteBeamElement::get_dof_numbers_for_unknowns(), oomph::BiharmonicEquations< DIM >::get_dof_numbers_for_unknowns(), oomph::TDisplacementBasedFoepplvonKarmanElement< NNODE_1D >::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricQTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricTTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianTTaylorHoodElement< DIM >::get_dof_numbers_for_unknowns(), oomph::DisplacementControlElement::get_dof_numbers_for_unknowns(), oomph::LinearElasticityEquationsBase< DIM >::get_dof_numbers_for_unknowns(), oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >::get_dof_numbers_for_unknowns(), oomph::ImposeImpenetrabilityElement< ELEMENT >::get_dof_numbers_for_unknowns(), oomph::ImposeParallelOutflowElement< ELEMENT >::get_dof_numbers_for_unknowns(), oomph::NetFluxControlElement::get_dof_numbers_for_unknowns(), oomph::TTaylorHoodElement< DIM >::get_dof_numbers_for_unknowns(), oomph::PMLHelmholtzEquations< DIM >::get_dof_numbers_for_unknowns(), oomph::PMLHelmholtzFluxElement< ELEMENT >::get_dof_numbers_for_unknowns(), oomph::PMLTimeHarmonicLinearElasticityEquationsBase< DIM >::get_dof_numbers_for_unknowns(), oomph::FSIDiagHermiteShellElement::get_dof_numbers_for_unknowns(), oomph::ClampedHermiteShellBoundaryConditionElement::get_dof_numbers_for_unknowns(), oomph::PVDEquationsBase< DIM >::get_dof_numbers_for_unknowns(), oomph::PVDEquationsWithPressure< DIM >::get_dof_numbers_for_unknowns(), oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::get_dof_numbers_for_unknowns(), oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::get_dof_numbers_for_unknowns(), oomph::BlockPrecQTaylorHoodSpaceTimeElement::get_dof_numbers_for_unknowns(), oomph::BlockPrecQTaylorHoodMixedOrderSpaceTimeElement::get_dof_numbers_for_unknowns(), oomph::QSphericalCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::QSphericalTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::TimeHarmonicFourierDecomposedLinearElasticityEquationsBase::get_dof_numbers_for_unknowns(), oomph::TimeHarmonicLinearElasticityEquationsBase< DIM >::get_dof_numbers_for_unknowns(), oomph::NavierStokesWomersleyPressureControlElement::get_dof_numbers_for_unknowns(), oomph::NetFluxControlElementForWomersleyPressureControl::get_dof_numbers_for_unknowns(), oomph::FoldHandler::get_dresiduals_dparameter(), oomph::PitchForkHandler::get_dresiduals_dparameter(), oomph::HopfHandler::get_dresiduals_dparameter(), oomph::Problem::get_inverse_mass_matrix_times_residuals(), oomph::FoldHandler::get_jacobian(), oomph::PitchForkHandler::get_jacobian(), oomph::HopfHandler::get_jacobian(), oomph::NavierStokesSchurComplementPreconditioner::get_pressure_advection_diffusion_matrix(), oomph::FoldHandler::get_residuals(), oomph::PitchForkHandler::get_residuals(), oomph::HopfHandler::get_residuals(), oomph::HopfHandler::HopfHandler(), oomph::METIS::partition_distributed_mesh(), oomph::METIS::partition_mesh(), oomph::PeriodicOrbitEquations::set_timestepper_weights(), oomph::FourierDecomposedHelmholtzDtNMesh< ELEMENT >::setup_gamma(), oomph::HelmholtzDtNMesh< ELEMENT >::setup_gamma(), oomph::AugmentedBlockFoldLinearSolver::solve(), oomph::BlockHopfLinearSolver::solve(), and oomph::BlockHopfLinearSolver::solve_for_two_rhs().
|
inline |
Set the boolean flag to exclude the external datum from the the finite difference loop when computing the jacobian matrix.
Definition at line 778 of file elements.h.
References Data_fd, i, Nexternal_data, and Ninternal_data.
|
inlineprotected |
Set the boolean flag to exclude the internal datum from the finite difference loop when computing the jacobian matrix.
Definition at line 167 of file elements.h.
References Data_fd, i, and Ninternal_data.
|
inline |
Return the status of the boolean flag indicating whether the external data is included in the finite difference loop.
Definition at line 757 of file elements.h.
References Data_fd, i, Nexternal_data, and Ninternal_data.
Referenced by fill_in_jacobian_from_external_by_fd().
|
inline |
Return a pointer to i-th external data object.
Definition at line 659 of file elements.h.
References Data_pt, i, Nexternal_data, and Ninternal_data.
Referenced by add_external_data(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), assign_internal_and_external_local_eqn_numbers(), assign_local_eqn_numbers(), oomph::SolidICProblem::backup_original_state(), oomph::ImmersedRigidBodyElement::delete_external_hijacked_data(), describe_local_dofs(), external_local_eqn(), oomph::NavierStokesFluxControlElement< ELEMENT >::fill_in_generic_residual_contribution_fluid_traction(), oomph::NavierStokesWomersleyPressureControlElement::fill_in_generic_residual_contribution_pressure_control(), fill_in_jacobian_from_external_by_fd(), flush_external_data(), oomph::RefineableSpaceTimeNavierStokesEquations< DIM >::further_build(), oomph::NavierStokesSurfaceDragTorqueElement< ELEMENT >::get_drag_and_torque(), oomph::NavierStokesSurfaceDragTorqueElement< ELEMENT >::output(), oomph::VolumeConstraintElement::p_traded_data_pt(), oomph::SpaceTimeNavierStokesEquations< DIM >::re_st(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::re_st(), oomph::SpaceTimeNavierStokesEquations< DIM >::re_st_pt(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::re_st_pt(), oomph::PseudoBucklingRingElement::reference_pressure_pt(), oomph::RefineableNavierStokesFluxControlElement< ELEMENT >::refineable_fill_in_generic_residual_contribution_fluid_traction(), self_test(), oomph::SpaceTimeNavierStokesEquations< DIM >::st(), and oomph::SpaceTimeNavierStokesEquations< DIM >::st_pt().
|
inline |
Return a pointer to i-th external data object (const version)
Definition at line 677 of file elements.h.
References Data_pt, i, Nexternal_data, and Ninternal_data.
|
inlineprotected |
Return the local equation number corresponding to the j-th value stored at the i-th external data.
Definition at line 311 of file elements.h.
References Data_local_eqn, external_data_pt(), i, Nexternal_data, Ninternal_data, and oomph::Data::nvalue().
Referenced by oomph::DGFaceElement::add_flux_contributions(), oomph::DisplacementControlElement::assign_additional_local_eqn_numbers(), oomph::ImmersedRigidBodyElement::centre_displacement_local_eqn(), oomph::LinearisedNavierStokesEquations::eigenvalue_local_eqn(), oomph::FoepplvonKarmanEquations::fill_in_contribution_to_residuals(), oomph::NavierStokesFluxControlElement< ELEMENT >::fill_in_generic_residual_contribution_fluid_traction(), oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >::fill_in_generic_residual_contribution_fourier_decomposed_helmholtz_DtN_bc(), oomph::HelmholtzDtNBoundaryElement< ELEMENT >::fill_in_generic_residual_contribution_helmholtz_DtN_bc(), oomph::NavierStokesWomersleyPressureControlElement::fill_in_generic_residual_contribution_pressure_control(), fill_in_jacobian_from_external_by_fd(), oomph::FluidInterfaceElement::pext_local_eqn(), oomph::VolumeConstraintElement::ptraded_local_eqn(), oomph::VolumeConstraintBoundingElement::ptraded_local_eqn(), oomph::PseudoBucklingRingElement::reference_pressure_local_eqn(), and oomph::RefineableNavierStokesFluxControlElement< ELEMENT >::refineable_fill_in_generic_residual_contribution_fluid_traction().
|
protectedvirtual |
Add the elemental contribution to the derivative of the jacobian matrix, mass matrix and the residuals vector with respect to the passed parameter. Note that this function should NOT initialise any entries. It must be called after the residuals vector and matrices have been initialised to zero.
Add the elemental contribution to the derivative of the jacobian matrix, mass matrix and the residuals vector with respect to a parameter. Note that this function should NOT initialise any entries. It must be called after the residuals vector and matrices have been initialised to zero. The default is deliberately broken.
Reimplemented in oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::NavierStokesEquations< DIM >, oomph::GeneralisedNewtonianNavierStokesEquations< DIM >, oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations, and oomph::AxisymmetricNavierStokesEquations.
Definition at line 1452 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by get_djacobian_and_dmass_matrix_dparameter().
|
protectedvirtual |
Add the elemental contribution to the derivatives of the elemental Jacobian matrix and residuals with respect to a parameter. This function should NOT initialise any entries and must be called after the entries have been initialised to zero The default implementation is to use finite differences to calculate the derivatives.
Reimplemented in oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::NavierStokesEquations< DIM >, oomph::GeneralisedNewtonianNavierStokesEquations< DIM >, oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations, and oomph::AxisymmetricNavierStokesEquations.
Definition at line 1402 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by get_djacobian_dparameter().
|
protectedvirtual |
Add the elemental contribution to the derivatives of the residuals with respect to a parameter. This function should NOT initialise any entries and must be called after the entries have been initialised to zero The default implementation is to use finite differences to calculate the derivatives.
Add the elemental contribution to the derivatives of the residuals with respect to a parameter. This function should NOT initialise any entries and must be called after the entries have been initialised to zero The default implementation is deliberately broken.
Reimplemented in oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::NavierStokesEquations< DIM >, oomph::GeneralisedNewtonianNavierStokesEquations< DIM >, oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations, and oomph::AxisymmetricNavierStokesEquations.
Definition at line 1358 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by get_dresiduals_dparameter().
|
protectedvirtual |
Fill in contribution to the product of the Hessian (derivative of Jacobian with respect to all variables) an eigenvector, Y, and other specified vectors, C (d(J_{ij})/d u_{k}) Y_{j} C_{k}.
Fill in contribution to the product of the Hessian (derivative of Jacobian with respect to all variables) an eigenvector, Y, and other specified vectors, C (d(J_{ij})/d u_{k}) Y_{j} C_{k} At the moment the dof pointer is passed in to enable easy calculation of finite difference default.
Reimplemented in oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::NavierStokesEquations< DIM >, oomph::GeneralisedNewtonianNavierStokesEquations< DIM >, oomph::RefineableGeneralisedNewtonianAxisymmetricNavierStokesEquations, oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations, oomph::RefineableAxisymmetricNavierStokesEquations, and oomph::AxisymmetricNavierStokesEquations.
Definition at line 1503 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by get_hessian_vector_products().
|
protectedvirtual |
Fill in the contributions to the vectors that when taken as dot product with other history values give the inner product over the element.
Definition at line 1571 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by get_inner_product_vectors().
|
protectedvirtual |
Fill in the contribution to the inner products between given pairs of history values.
Definition at line 1543 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by get_inner_products().
|
inlineprotectedvirtual |
Add the elemental contribution to the jacobian matrix. and the residuals vector. Note that this function will NOT initialise the residuals vector or the jacobian matrix. It must be called after the residuals vector and jacobian matrix have been initialised to zero. The default is to use finite differences to calculate the jacobian.
Reimplemented in oomph::NavierStokesWomersleyPressureControlElement, oomph::NavierStokesImpedanceTractionElement< BULK_NAVIER_STOKES_ELEMENT, WOMERSLEY_ELEMENT, DIM >, oomph::WomersleyEquations< DIM >, oomph::UnsteadyHeatFluxElement< ELEMENT >, oomph::UnsteadyHeatEquations< DIM >, oomph::TimeHarmonicLinearElasticityTractionElement< ELEMENT >, oomph::TimeHarmonicLinearElasticityEquations< DIM >, oomph::TimeHarmonicFourierDecomposedLinearElasticityTractionElement< ELEMENT >, oomph::TimeHarmonicFourierDecomposedLinearElasticityEquations, oomph::SteadyAxisymAdvectionDiffusionFluxElement< ELEMENT >, oomph::SteadyAxisymAdvectionDiffusionEquations, oomph::SphericalNavierStokesEquations, oomph::SphericalAdvectionDiffusionFluxElement< ELEMENT >, oomph::SphericalAdvectionDiffusionEquations, oomph::SpaceTimeUnsteadyHeatMixedOrderEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::FpPressureAdvDiffRobinBCMixedOrderSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesMixedOrderSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesMixedOrderSpaceTimeTractionElement< ELEMENT >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::RefineableFSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::RefineableImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::RefineableFSISolidTractionElement< ELEMENT, DIM >, oomph::FSISolidTractionElement< ELEMENT, DIM >, oomph::RefineableSolidTractionElement< ELEMENT >, oomph::SolidTractionElement< ELEMENT >, oomph::PVDEquationsWithPressure< DIM >, oomph::PVDEquations< DIM >, oomph::FSIDiagHermiteShellElement, oomph::KirchhoffLoveShellEquations, oomph::ImmersedRigidBodyElement, oomph::PoroelasticityFaceElement< ELEMENT >, oomph::PoroelasticityEquations< DIM >, oomph::PoroelasticityEquations< 2 >, oomph::PolarStressIntegralElement< ELEMENT >, oomph::PolarNavierStokesEquations, oomph::PolarNavierStokesTractionElement< ELEMENT >, oomph::PoissonFluxElement< ELEMENT >, oomph::PoissonEquations< DIM >, oomph::PMLTimeHarmonicLinearElasticityTractionElement< ELEMENT >, oomph::PMLTimeHarmonicLinearElasticityEquations< DIM >, oomph::PMLHelmholtzFluxElement< ELEMENT >, oomph::PMLHelmholtzEquations< DIM >, oomph::PMLFourierDecomposedHelmholtzFluxElement< ELEMENT >, oomph::PMLFourierDecomposedHelmholtzEquations, oomph::ODEElement, oomph::RefineableNavierStokesFluxControlElement< ELEMENT >, oomph::NavierStokesFluxControlElement< ELEMENT >, oomph::NetFluxControlElement, oomph::NavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCElement< ELEMENT >, oomph::ImposeParallelOutflowElement< ELEMENT >, oomph::ImposeImpenetrabilityElement< ELEMENT >, oomph::RefineableNavierStokesTractionElement< ELEMENT >, oomph::NavierStokesTractionElement< ELEMENT >, oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >, oomph::TimeHarmonicLinElastLoadedByPMLHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >, oomph::AdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >, oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >, oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >, oomph::RefineableNavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >, oomph::HelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >, oomph::TimeHarmonicLinElastLoadedByHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >, oomph::FourierDecomposedHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >, oomph::FourierDecomposedTimeHarmonicLinElastLoadedByHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >, oomph::RefineableBuoyantQCrouzeixRaviartElement< DIM >, oomph::BuoyantQCrouzeixRaviartElement< DIM >, oomph::BuoyantQCrouzeixRaviartElement< DIM >, oomph::BuoyantQCrouzeixRaviartElement< DIM >, RefineableLinearisedQCrouzeixRaviartMultiDomainElement, RefineableLinearisedQTaylorHoodMultiDomainElement, LinearisedQCrouzeixRaviartMultiDomainElement, LinearisedQTaylorHoodMultiDomainElement, oomph::LinearisedNavierStokesEigenfunctionNormalisationElement, RefineableLinearisedAxisymmetricQCrouzeixRaviartMultiDomainElement, RefineableLinearisedAxisymmetricQTaylorHoodMultiDomainElement, LinearisedAxisymmetricQCrouzeixRaviartMultiDomainElement, LinearisedAxisymmetricQTaylorHoodMultiDomainElement, oomph::LinearisedAxisymmetricNavierStokesEquations, oomph::LinearWaveFluxElement< ELEMENT >, oomph::LinearWaveEquations< DIM >, oomph::LinearElasticityTractionElement< ELEMENT >, oomph::LinearElasticityEquations< DIM >, oomph::HelmholtzFluxElement< ELEMENT >, oomph::HelmholtzEquations< DIM >, oomph::HelmholtzDtNBoundaryElement< ELEMENT >, oomph::HelmholtzAbsorbingBCElement< ELEMENT >, oomph::ProjectableElement< ELEMENT >, oomph::ProjectableElement< FVK_ELEMENT >, oomph::ProjectableElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableElement< HELMHOLTZ_ELEMENT >, oomph::ProjectableElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableElement< PVD_ELEMENT >, oomph::ProjectableElement< ADR_ELEMENT >, oomph::ProjectableElement< DARCY_ELEMENT >, oomph::ProjectableElement< POISSON_ELEMENT >, oomph::ProjectableElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::FSIWallElement, oomph::FaceElementAsGeomObject< ELEMENT >, oomph::SolidFiniteElement, oomph::FiniteElement, oomph::ElementWithExternalElement, oomph::GeneralisedNewtonianNavierStokesEquations< DIM >, oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations, oomph::FourierDecomposedHelmholtzFluxElement< ELEMENT >, oomph::FourierDecomposedHelmholtzEquations, oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >, oomph::FoepplvonKarmanVolumeConstraintElement< ELEMENT, MESH >, oomph::FluxTransportEquations< DIM >, oomph::ElasticLineFluidInterfaceBoundingElement< ELEMENT >, oomph::ElasticPointFluidInterfaceBoundingElement< ELEMENT >, oomph::ElasticUpdateFluidInterfaceElement< FluidInterfaceElement, SurfaceDerivatives, ELEMENT >, oomph::ElasticUpdateFluidInterfaceElement< SurfactantTransportInterfaceElement, AxisymmetricDerivatives, ELEMENT >, oomph::ElasticUpdateFluidInterfaceElement< FluidInterfaceElement, AxisymmetricDerivatives, ELEMENT >, oomph::ElasticUpdateFluidInterfaceElement< FluidInterfaceElement, LineDerivatives, ELEMENT >, oomph::SpineLineFluidInterfaceBoundingElement< ELEMENT >, oomph::SpinePointFluidInterfaceBoundingElement< ELEMENT >, oomph::SpineUpdateFluidInterfaceElement< EQUATION_CLASS, DERIVATIVE_CLASS, ELEMENT >, oomph::SpineUpdateFluidInterfaceElement< SurfactantTransportInterfaceElement, LineDerivatives, ELEMENT >, oomph::SpineUpdateFluidInterfaceElement< FluidInterfaceElement, SurfaceDerivatives, ELEMENT >, oomph::SpineUpdateFluidInterfaceElement< SurfactantTransportInterfaceElement, AxisymmetricDerivatives, ELEMENT >, oomph::SpineUpdateFluidInterfaceElement< SurfactantTransportInterfaceElement, SurfaceDerivatives, ELEMENT >, oomph::SpineUpdateFluidInterfaceElement< FluidInterfaceElement, AxisymmetricDerivatives, ELEMENT >, oomph::SpineUpdateFluidInterfaceElement< FluidInterfaceElement, LineDerivatives, ELEMENT >, oomph::SpineSurfaceVolumeConstraintBoundingElement< ELEMENT >, oomph::ElasticSurfaceVolumeConstraintBoundingElement< ELEMENT >, oomph::SpineAxisymmetricVolumeConstraintBoundingElement< ELEMENT >, oomph::ElasticAxisymmetricVolumeConstraintBoundingElement< ELEMENT >, oomph::SpineLineVolumeConstraintBoundingElement< ELEMENT >, oomph::ElasticLineVolumeConstraintBoundingElement< ELEMENT >, oomph::VolumeConstraintElement, oomph::DarcyFaceElement< ELEMENT >, oomph::BiharmonicFluidBoundaryElement, oomph::BiharmonicFluxElement< DIM >, oomph::FSIHermiteBeamElement, oomph::KirchhoffLoveBeamEquations, oomph::AxisymmetricSolidTractionElement< ELEMENT >, oomph::AxisymmetricPVDEquationsWithPressure, oomph::AxisymmetricPVDEquations, oomph::FSILinearisedAxisymPoroelasticTractionElement< POROELASTICITY_BULK_ELEMENT, NAVIER_STOKES_BULK_ELEMENT >, oomph::AxisymmetricPoroelasticityTractionElement< ELEMENT >, oomph::AxisymmetricPoroelasticityTractionElement< POROELASTICITY_BULK_ELEMENT >, oomph::AxisymmetricPoroelasticityEquations, oomph::AxisymmetricNavierStokesEquations, oomph::LinearisedFSIAxisymmetricNStNoSlipBCElementElement< FLUID_BULK_ELEMENT, SOLID_BULK_ELEMENT >, oomph::AxisymmetricNavierStokesTractionElement< ELEMENT >, oomph::FSIAxisymmetricLinearElasticityTractionElement< ELASTICITY_BULK_ELEMENT, NAVIER_STOKES_BULK_ELEMENT >, oomph::AxisymmetricLinearElasticityTractionElement< ELEMENT >, oomph::AxisymmetricLinearElasticityEquations, oomph::GeneralisedAxisymAdvectionDiffusionEquations, oomph::AxisymAdvectionDiffusionEquations, oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >, oomph::GeneralisedAdvectionDiffusionEquations< DIM >, oomph::AdvectionDiffusionFluxElement< ELEMENT >, oomph::AdvectionDiffusionEquations< DIM >, and oomph::BiharmonicEquations< DIM >.
Definition at line 499 of file elements.h.
References fill_in_contribution_to_residuals(), fill_in_jacobian_from_external_by_fd(), fill_in_jacobian_from_internal_by_fd(), get_residuals(), and Ndof.
Referenced by get_jacobian().
|
protectedvirtual |
Add the elemental contribution to the jacobian matrix, mass matrix and the residuals vector. Note that this function should NOT initialise any entries. It must be called after the residuals vector and matrices have been initialised to zero.
Add the elemental contribution to the jacobian matrix, mass matrix and the residuals vector. Note that this function should NOT initialise any entries. It must be called after the residuals vector and matrices have been initialised to zero. The default is deliberately broken.
Reimplemented in oomph::SphericalNavierStokesEquations, oomph::SphericalAdvectionDiffusionEquations, oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::PVDEquationsWithPressure< DIM >, oomph::PolarStressIntegralElement< ELEMENT >, oomph::PolarNavierStokesEquations, oomph::PolarNavierStokesTractionElement< ELEMENT >, oomph::NavierStokesEquations< DIM >, oomph::AdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >, oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >, oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >, oomph::RefineableNavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >, oomph::RefineableBuoyantQCrouzeixRaviartElement< DIM >, oomph::BuoyantQCrouzeixRaviartElement< DIM >, oomph::BuoyantQCrouzeixRaviartElement< DIM >, oomph::BuoyantQCrouzeixRaviartElement< DIM >, oomph::LinearisedNavierStokesEigenfunctionNormalisationElement, oomph::LinearisedAxisymmetricNavierStokesEquations, oomph::GeneralisedNewtonianNavierStokesEquations< DIM >, oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations, oomph::DisplacementBasedFoepplvonKarmanEquations, oomph::FluxTransportEquations< DIM >, oomph::SurfactantTransportInterfaceElement, oomph::VolumeConstraintElement, oomph::AxisymmetricNavierStokesEquations, oomph::GeneralisedAxisymAdvectionDiffusionEquations, oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >, oomph::GeneralisedAdvectionDiffusionEquations< DIM >, and oomph::AdvectionDiffusionEquations< DIM >.
Definition at line 1322 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by oomph::BuoyantQCrouzeixRaviartElement< DIM >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::RefineableBuoyantQCrouzeixRaviartElement< DIM >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::RefineableNavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::AdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix(), and get_jacobian_and_mass_matrix().
|
protectedvirtual |
Add the elemental contribution to the mass matrix matrix. and the residuals vector. Note that this function should NOT initialise the residuals vector or the mass matrix. It must be called after the residuals vector and jacobian matrix have been initialised to zero. The default is deliberately broken.
Add the elemental contribution to the mass matrix and the residuals vector. Note that this function will NOT initialise the residuals vector or the mass matrix. It must be called after the residuals vector and jacobian matrix have been initialised to zero. The default is deliberately broken.
Reimplemented in oomph::ODEElement, and oomph::FluxTransportEquations< DIM >.
Definition at line 1292 of file elements.cc.
References oomph::Global_string_for_annotation::string().
Referenced by oomph::DGElement::get_inverse_mass_matrix_times_residuals(), get_mass_matrix(), and oomph::DGElement::pre_compute_mass_matrix().
|
inlineprotectedvirtual |
Add the elemental contribution to the residuals vector. Note that this function will NOT initialise the residuals vector. It must be called after the residuals vector has been initialised to zero.
Reimplemented in oomph::HeightControlElement, oomph::YoungLaplaceEquations, oomph::YoungLaplaceContactAngleElement< ELEMENT >, oomph::RefineableYoungLaplaceEquations, oomph::NavierStokesWomersleyPressureControlElement, oomph::NavierStokesImpedanceTractionElement< BULK_NAVIER_STOKES_ELEMENT, WOMERSLEY_ELEMENT, DIM >, oomph::WomersleyEquations< DIM >, oomph::UnsteadyHeatFluxElement< ELEMENT >, oomph::UnsteadyHeatEquations< DIM >, oomph::TimeHarmonicLinearElasticityTractionElement< ELEMENT >, oomph::TimeHarmonicLinearElasticityEquations< DIM >, oomph::TimeHarmonicFourierDecomposedLinearElasticityTractionElement< ELEMENT >, oomph::TimeHarmonicFourierDecomposedLinearElasticityEquations, oomph::SteadyAxisymAdvectionDiffusionFluxElement< ELEMENT >, oomph::SteadyAxisymAdvectionDiffusionEquations, oomph::SphericalNavierStokesEquations, oomph::SphericalAdvectionDiffusionFluxElement< ELEMENT >, oomph::SphericalAdvectionDiffusionEquations, oomph::SpaceTimeUnsteadyHeatMixedOrderEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >, oomph::FpPressureAdvDiffRobinBCMixedOrderSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesMixedOrderSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesMixedOrderSpaceTimeTractionElement< ELEMENT >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::SpaceTimeNavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCSpaceTimeElement< ELEMENT >, oomph::RefineableNavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::NavierStokesSpaceTimeTractionElement< ELEMENT >, oomph::RefineableFSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::RefineableImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::RefineableSolidTractionElement< ELEMENT >, oomph::SolidTractionElement< ELEMENT >, oomph::PVDEquationsWithPressure< DIM >, oomph::PVDEquations< DIM >, oomph::ClampedHermiteShellBoundaryConditionElement, oomph::KirchhoffLoveShellEquations, oomph::ImmersedRigidBodyElement, oomph::PoroelasticityFaceElement< ELEMENT >, oomph::PoroelasticityEquations< DIM >, oomph::PoroelasticityEquations< 2 >, oomph::PolarStressIntegralElement< ELEMENT >, oomph::PolarNavierStokesEquations, oomph::PolarNavierStokesTractionElement< ELEMENT >, oomph::PoissonFluxElement< ELEMENT >, oomph::PoissonEquations< DIM >, oomph::PMLTimeHarmonicLinearElasticityTractionElement< ELEMENT >, oomph::PMLTimeHarmonicLinearElasticityEquations< DIM >, oomph::PMLHelmholtzFluxElement< ELEMENT >, oomph::PMLHelmholtzEquations< DIM >, oomph::PMLFourierDecomposedHelmholtzFluxElement< ELEMENT >, oomph::PMLFourierDecomposedHelmholtzEquations, oomph::ODEElement, oomph::RefineableNavierStokesFluxControlElement< ELEMENT >, oomph::NavierStokesFluxControlElement< ELEMENT >, oomph::NetFluxControlElement, oomph::NavierStokesEquations< DIM >, oomph::FpPressureAdvDiffRobinBCElement< ELEMENT >, oomph::ImposeParallelOutflowElement< ELEMENT >, oomph::ImposeImpenetrabilityElement< ELEMENT >, oomph::RefineableNavierStokesTractionElement< ELEMENT >, oomph::NavierStokesTractionElement< ELEMENT >, oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >, oomph::TimeHarmonicLinElastLoadedByPMLHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >, oomph::HelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >, oomph::TimeHarmonicLinElastLoadedByHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >, oomph::FourierDecomposedHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >, oomph::FourierDecomposedTimeHarmonicLinElastLoadedByHelmholtzPressureBCElement< ELASTICITY_BULK_ELEMENT, HELMHOLTZ_BULK_ELEMENT >, oomph::RefineableBuoyantQCrouzeixRaviartElement< DIM >, oomph::BuoyantQCrouzeixRaviartElement< DIM >, oomph::LinearisedNavierStokesEquations, oomph::LinearisedNavierStokesEigenfunctionNormalisationElement, oomph::LinearisedAxisymmetricNavierStokesEquations, oomph::LinearWaveFluxElement< ELEMENT >, oomph::LinearWaveEquations< DIM >, oomph::LinearElasticityTractionElement< ELEMENT >, oomph::LinearElasticityEquations< DIM >, oomph::HelmholtzFluxElement< ELEMENT >, oomph::HelmholtzEquations< DIM >, oomph::HelmholtzDtNBoundaryElement< ELEMENT >, oomph::HelmholtzAbsorbingBCElement< ELEMENT >, oomph::ProjectableElement< ELEMENT >, oomph::ProjectableElement< FVK_ELEMENT >, oomph::ProjectableElement< AXISYM_LINEAR_ELAST_ELEMENT >, oomph::ProjectableElement< UNSTEADY_HEAT_ELEMENT >, oomph::ProjectableElement< LINEAR_ELAST_ELEMENT >, oomph::ProjectableElement< CROUZEIX_RAVIART_ELEMENT >, oomph::ProjectableElement< HELMHOLTZ_ELEMENT >, oomph::ProjectableElement< AXISYMMETRIC_POROELASTICITY_ELEMENT >, oomph::ProjectableElement< TAYLOR_HOOD_ELEMENT >, oomph::ProjectableElement< PVD_ELEMENT >, oomph::ProjectableElement< ADR_ELEMENT >, oomph::ProjectableElement< DARCY_ELEMENT >, oomph::ProjectableElement< POISSON_ELEMENT >, oomph::ProjectableElement< FOURIER_DECOMPOSED_HELMHOLTZ_ELEMENT >, oomph::ProjectableElement< TIME_HARMONIC_LINEAR_ELAST_ELEMENT >, oomph::DisplacementControlElement, oomph::GeneralisedNewtonianNavierStokesEquations< DIM >, oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations, oomph::FourierDecomposedHelmholtzFluxElement< ELEMENT >, oomph::FourierDecomposedHelmholtzEquations, oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >, oomph::FoepplvonKarmanVolumeConstraintElement< ELEMENT, MESH >, oomph::FoepplvonKarmanEquations, oomph::DisplacementBasedFoepplvonKarmanEquations, oomph::FluxTransportEquations< DIM >, oomph::FluidInterfaceElement, oomph::FluidInterfaceBoundingElement, oomph::VolumeConstraintBoundingElement, oomph::VolumeConstraintElement, oomph::DarcyFaceElement< ELEMENT >, oomph::DarcyEquations< DIM >, oomph::DarcyEquations< 2 >, oomph::BiharmonicFluidBoundaryElement, oomph::BiharmonicFluxElement< DIM >, oomph::BiharmonicEquations< DIM >, oomph::ClampedSlidingHermiteBeamBoundaryConditionElement, oomph::KirchhoffLoveBeamEquations, oomph::AxisymmetricSolidTractionElement< ELEMENT >, oomph::AxisymmetricPVDEquationsWithPressure, oomph::AxisymmetricPVDEquations, oomph::AxisymmetricPoroelasticityTractionElement< ELEMENT >, oomph::AxisymmetricPoroelasticityTractionElement< POROELASTICITY_BULK_ELEMENT >, oomph::AxisymmetricPoroelasticityEquations, oomph::LinearisedAxisymPoroelasticBJS_FSIElement< FLUID_BULK_ELEMENT, POROELASTICITY_BULK_ELEMENT >, oomph::AxisymmetricNavierStokesEquations, oomph::LinearisedFSIAxisymmetricNStNoSlipBCElementElement< FLUID_BULK_ELEMENT, SOLID_BULK_ELEMENT >, oomph::AxisymmetricNavierStokesTractionElement< ELEMENT >, oomph::FSIAxisymmetricLinearElasticityTractionElement< ELASTICITY_BULK_ELEMENT, NAVIER_STOKES_BULK_ELEMENT >, oomph::AxisymmetricLinearElasticityTractionElement< ELEMENT >, oomph::AxisymmetricLinearElasticityEquations, oomph::AxisymFoepplvonKarmanEquations, oomph::AxisymFoepplvonKarmanEquations, oomph::GeneralisedAxisymAdvectionDiffusionEquations, oomph::AxisymAdvectionDiffusionEquations, oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >, oomph::GeneralisedAdvectionDiffusionEquations< DIM >, oomph::AdvectionDiffusionFluxElement< ELEMENT >, and oomph::AdvectionDiffusionEquations< DIM >.
Definition at line 357 of file elements.h.
References oomph::Global_string_for_annotation::string().
Referenced by oomph::ElementWithExternalElement::fill_in_contribution_to_jacobian(), fill_in_contribution_to_jacobian(), oomph::FiniteElement::fill_in_contribution_to_jacobian(), oomph::SolidFiniteElement::fill_in_contribution_to_jacobian(), oomph::FSIWallElement::fill_in_contribution_to_jacobian(), oomph::DGElement::get_inverse_mass_matrix_times_residuals(), and get_residuals().
|
inlineprotected |
Calculate the contributions to the jacobian from the external degrees of freedom using finite differences. This version computes the residuals vector before calculating the jacobian terms. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data.
Definition at line 435 of file elements.h.
References fill_in_jacobian_from_external_by_fd(), get_residuals(), and Ndof.
|
protected |
Calculate the contributions to the jacobian from the external degrees of freedom using finite differences. This version of the function assumes that the residuals vector has already been calculated. If the boolean argument is true, the finite differencing will be performed for all external data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data.
This function calculates the entries of Jacobian matrix, used in the Newton method, associated with the external degrees of freedom. It does this using finite differences, rather than an analytical formulation, so can be done in total generality. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data.
Definition at line 1199 of file elements.cc.
References Default_fd_jacobian_step, external_data_fd(), external_data_pt(), external_local_eqn(), get_residuals(), i, ndof(), Nexternal_data, oomph::Data::nvalue(), reset_after_external_fd(), reset_in_external_fd(), update_before_external_fd(), update_in_external_fd(), and oomph::Data::value_pt().
Referenced by oomph::KirchhoffLoveBeamEquations::fill_in_contribution_to_jacobian(), oomph::SpinePointFluidInterfaceBoundingElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::SpineLineFluidInterfaceBoundingElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::ElasticPointFluidInterfaceBoundingElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::ElasticLineFluidInterfaceBoundingElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::ElementWithExternalElement::fill_in_contribution_to_jacobian(), fill_in_contribution_to_jacobian(), oomph::FiniteElement::fill_in_contribution_to_jacobian(), oomph::SolidFiniteElement::fill_in_contribution_to_jacobian(), oomph::FSIWallElement::fill_in_contribution_to_jacobian(), oomph::ImmersedRigidBodyElement::fill_in_contribution_to_jacobian(), oomph::KirchhoffLoveShellEquations::fill_in_contribution_to_jacobian(), oomph::SolidTractionElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::RefineableSolidTractionElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::RefineableImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_jacobian(), and fill_in_jacobian_from_external_by_fd().
|
inlineprotected |
Calculate the contributions to the jacobian from the internal degrees of freedom using finite differences. This version computes the residuals vector before calculating the jacobian terms. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data.
Definition at line 401 of file elements.h.
References fill_in_jacobian_from_internal_by_fd(), get_residuals(), and Ndof.
|
protected |
Calculate the contributions to the jacobian from the internal degrees of freedom using finite differences. This version of the function assumes that the residuals vector has already been calculated. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data.
This function calculates the entries of Jacobian matrix, used in the Newton method, associated with the internal degrees of freedom. It does this using finite differences, rather than an analytical formulation, so can be done in total generality. If the boolean argument is true, the finite differencing will be performed for all internal data, irrespective of the information in Data_fd. The default value (false) uses the information in Data_fd to selectively difference only certain data.
Definition at line 1102 of file elements.cc.
References Default_fd_jacobian_step, get_residuals(), i, internal_data_fd(), internal_data_pt(), internal_local_eqn(), ndof(), Ninternal_data, oomph::Data::nvalue(), reset_after_internal_fd(), reset_in_internal_fd(), update_before_internal_fd(), update_in_internal_fd(), and oomph::Data::value_pt().
Referenced by oomph::ElementWithExternalElement::fill_in_contribution_to_jacobian(), fill_in_contribution_to_jacobian(), oomph::FiniteElement::fill_in_contribution_to_jacobian(), oomph::SolidFiniteElement::fill_in_contribution_to_jacobian(), oomph::FSIWallElement::fill_in_contribution_to_jacobian(), oomph::ODEElement::fill_in_contribution_to_jacobian(), oomph::ImmersedRigidBodyElement::fill_in_contribution_to_jacobian(), and fill_in_jacobian_from_internal_by_fd().
void oomph::GeneralisedElement::flush_external_data | ( | ) |
Flush all external data.
Flush all the external data, i.e. clear the pointers to external data from the internal storage.
Definition at line 387 of file elements.cc.
References Data_fd, Data_pt, i, Nexternal_data, and Ninternal_data.
Referenced by oomph::ImmersedRigidBodyElement::flush_drag_mesh(), oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::set_boundary_shape_geom_object_pt(), oomph::ImmersedRigidBodyElement::set_drag_mesh(), oomph::PseudoBucklingRingElement::set_reference_pressure_pt(), and oomph::SolidICProblem::setup_problem().
void oomph::GeneralisedElement::flush_external_data | ( | Data *const & | data_pt | ) |
Flush the object addressed by data_pt from the external data array.
Remove the object addressed by data_pt from the external data array Note that this could mess up the numbering of other external data.
Definition at line 429 of file elements.cc.
References Data_fd, Data_pt, external_data_pt(), i, Nexternal_data, and Ninternal_data.
|
inlinevirtual |
Calculate the derivatives of the elemental Jacobian matrix mass matrix and residuals with respect to a parameter.
Definition at line 1061 of file elements.h.
References fill_in_contribution_to_djacobian_and_dmass_matrix_dparameter(), oomph::Vector< _Tp >::initialise(), and oomph::DenseMatrix< T >::initialise().
Referenced by oomph::HopfHandler::get_dresiduals_dparameter().
|
inlinevirtual |
Calculate the derivatives of the elemental Jacobian matrix and residuals with respect to a parameter.
Definition at line 1046 of file elements.h.
References fill_in_contribution_to_djacobian_dparameter(), oomph::Vector< _Tp >::initialise(), and oomph::DenseMatrix< T >::initialise().
Referenced by oomph::AssemblyHandler::get_djacobian_dparameter(), oomph::FoldHandler::get_dresiduals_dparameter(), and oomph::PitchForkHandler::get_dresiduals_dparameter().
|
inlinevirtual |
Create a list of pairs for the unknowns that this element is "in charge of" – ignore any unknowns associated with external Data
. The first entry in each pair must contain the global equation number of the unknown, while the second one contains the number of the DOF type that this unknown is associated with. (The function can obviously only be called if the equation numbering scheme has been set up.)
Reimplemented in oomph::BlockPreconditionableSpaceTimeElementBase, oomph::NetFluxControlElementForWomersleyPressureControl, oomph::NavierStokesWomersleyPressureControlElement, oomph::TimeHarmonicLinearElasticityEquationsBase< DIM >, oomph::TimeHarmonicFourierDecomposedLinearElasticityEquationsBase, oomph::QSphericalTaylorHoodElement, oomph::QSphericalCrouzeixRaviartElement, oomph::BlockPrecRefineableQUnsteadyHeatMixedOrderSpaceTimeElement< SPATIAL_DIM, NNODE_1D >, oomph::BlockPrecQUnsteadyHeatMixedOrderSpaceTimeElement< SPATIAL_DIM, NNODE_1D >, oomph::BlockPrecRefineableQUnsteadyHeatSpaceTimeElement< SPATIAL_DIM, NNODE_1D >, oomph::BlockPrecQUnsteadyHeatSpaceTimeElement< SPATIAL_DIM, NNODE_1D >, oomph::BlockPrecRefineableQUnsteadyHeatSpaceTimeElement< SPATIAL_DIM, NNODE_1D >, oomph::BlockPrecQUnsteadyHeatSpaceTimeElement< SPATIAL_DIM, NNODE_1D >, oomph::BlockPrecQTaylorHoodMixedOrderSpaceTimeElement, oomph::BlockPrecQTaylorHoodSpaceTimeElement, oomph::QTaylorHoodSpaceTimeElement< DIM >, oomph::QTaylorHoodSpaceTimeElement< 2 >, oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::FSISolidTractionElement< ELEMENT, DIM >, oomph::PVDEquationsWithPressure< DIM >, oomph::PVDEquationsBase< DIM >, oomph::ClampedHermiteShellBoundaryConditionElement, oomph::FSIDiagHermiteShellElement, oomph::PMLTimeHarmonicLinearElasticityEquationsBase< DIM >, oomph::PMLHelmholtzFluxElement< ELEMENT >, oomph::PMLHelmholtzEquations< DIM >, oomph::TTaylorHoodElement< DIM >, oomph::TCrouzeixRaviartElement< DIM >, oomph::NetFluxControlElement, oomph::QTaylorHoodElement< DIM >, oomph::QCrouzeixRaviartElement< DIM >, oomph::ImposeParallelOutflowElement< ELEMENT >, oomph::ImposeImpenetrabilityElement< ELEMENT >, oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >, oomph::RefineableNavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >, oomph::LinearElasticityEquationsBase< DIM >, oomph::DisplacementControlElement, oomph::GeneralisedNewtonianTTaylorHoodElement< DIM >, oomph::GeneralisedNewtonianTCrouzeixRaviartElement< DIM >, oomph::GeneralisedNewtonianQTaylorHoodElement< DIM >, oomph::GeneralisedNewtonianQCrouzeixRaviartElement< DIM >, oomph::GeneralisedNewtonianAxisymmetricTTaylorHoodElement, oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement, oomph::GeneralisedNewtonianAxisymmetricQTaylorHoodElement, oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement, oomph::TDisplacementBasedFoepplvonKarmanElement< NNODE_1D >, oomph::BiharmonicEquations< DIM >, oomph::FSIHermiteBeamElement, oomph::AxisymmetricTTaylorHoodElement, oomph::AxisymmetricTCrouzeixRaviartElement, oomph::AxisymmetricQTaylorHoodElement, oomph::AxisymmetricQCrouzeixRaviartElement, and oomph::AxisymmetricLinearElasticityEquationsBase.
Definition at line 1221 of file elements.h.
|
inlinevirtual |
Calculate the derivatives of the residuals with respect to a parameter.
Definition at line 1034 of file elements.h.
References fill_in_contribution_to_dresiduals_dparameter(), and oomph::Vector< _Tp >::initialise().
Referenced by oomph::AssemblyHandler::get_dresiduals_dparameter(), oomph::FoldHandler::get_dresiduals_dparameter(), and oomph::PitchForkHandler::get_dresiduals_dparameter().
|
inlinevirtual |
Calculate the product of the Hessian (derivative of Jacobian with respect to all variables) an eigenvector, Y, and other specified vectors, C (d(J_{ij})/d u_{k}) Y_{j} C_{k}.
Add the elemental contribution to the product
Definition at line 1083 of file elements.h.
References fill_in_contribution_to_hessian_vector_products(), and oomph::DenseMatrix< T >::initialise().
Referenced by oomph::AssemblyHandler::get_hessian_vector_products(), and oomph::PitchForkHandler::get_hessian_vector_products().
|
inlinevirtual |
Compute the vectors that when taken as a dot product with other history values give the inner product over the element.
Definition at line 1106 of file elements.h.
References fill_in_contribution_to_inner_product_vectors(), and i.
Referenced by oomph::AssemblyHandler::get_inner_product_vectors().
|
inlinevirtual |
Return the vector of inner product of the given pairs of history values.
Definition at line 1095 of file elements.h.
References fill_in_contribution_to_inner_products(), and oomph::Vector< _Tp >::initialise().
Referenced by oomph::AssemblyHandler::get_inner_products().
|
inlinevirtual |
Calculate the elemental Jacobian matrix "d equation / d variable".
Reimplemented in oomph::ImposeFluxForWomersleyElement< DIM >, oomph::RefineableSolidQElement< 2 >, oomph::RefineableSolidQElement< 1 >, oomph::RefineableSolidQElement< 3 >, oomph::PseudoBucklingRingElement, oomph::Hijacked< SpineElement< FaceGeometry< FaceGeometry< ELEMENT > > > >, oomph::Hijacked< SpineElement< FaceGeometry< ELEMENT > > >, oomph::ElementWithSpecificMovingNodes< ELEMENT, NODE_TYPE >, oomph::ElementWithSpecificMovingNodes< ELEMENT, SpineNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, AlgebraicNode >, and oomph::ElementWithSpecificMovingNodes< ELEMENT, MacroElementNodeUpdateNode >.
Definition at line 990 of file elements.h.
References fill_in_contribution_to_jacobian(), oomph::Vector< _Tp >::initialise(), and oomph::DenseMatrix< T >::initialise().
Referenced by oomph::AssemblyHandler::get_jacobian(), oomph::FoldHandler::get_jacobian(), oomph::PitchForkHandler::get_jacobian(), oomph::HopfHandler::get_jacobian(), oomph::RefineableSolidQElement< 3 >::get_jacobian(), oomph::RefineableSolidQElement< 1 >::get_jacobian(), oomph::RefineableSolidQElement< 2 >::get_jacobian(), oomph::FoldHandler::get_residuals(), oomph::PitchForkHandler::get_residuals(), and oomph::AugmentedBlockFoldLinearSolver::solve().
|
inlinevirtual |
Calculate the residuals and jacobian and elemental "mass" matrix, the matrix that multiplies the time derivative terms.
Reimplemented in oomph::ElementWithSpecificMovingNodes< ELEMENT, NODE_TYPE >, oomph::ElementWithSpecificMovingNodes< ELEMENT, SpineNode >, oomph::ElementWithSpecificMovingNodes< ELEMENT, AlgebraicNode >, and oomph::ElementWithSpecificMovingNodes< ELEMENT, MacroElementNodeUpdateNode >.
Definition at line 1016 of file elements.h.
References fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::Vector< _Tp >::initialise(), and oomph::DenseMatrix< T >::initialise().
Referenced by oomph::PeriodicOrbitEquations::fill_in_generic_residual_contribution_orbit(), oomph::EigenProblemHandler::get_all_vectors_and_matrices(), oomph::HopfHandler::get_jacobian(), oomph::HopfHandler::get_residuals(), oomph::BlockHopfLinearSolver::solve(), and oomph::BlockHopfLinearSolver::solve_for_two_rhs().
|
inlinevirtual |
Calculate the residuals and the elemental "mass" matrix, the matrix that multiplies the time derivative terms in a problem.
Definition at line 1003 of file elements.h.
References fill_in_contribution_to_mass_matrix(), oomph::Vector< _Tp >::initialise(), and oomph::DenseMatrix< T >::initialise().
Referenced by oomph::ExplicitTimeStepHandler::get_all_vectors_and_matrices(), and oomph::ExplicitTimeStepHandler::get_jacobian().
|
inlinevirtual |
Calculate the vector of residuals of the equations in the element. By default initialise the vector to zero and then call the fill_in_contribution_to_residuals() function. Note that this entire function can be overloaded if desired.
Reimplemented in oomph::ImposeFluxForWomersleyElement< DIM >, oomph::PseudoBucklingRingElement, oomph::Hijacked< SpineElement< FaceGeometry< FaceGeometry< ELEMENT > > > >, and oomph::Hijacked< SpineElement< FaceGeometry< ELEMENT > > >.
Definition at line 980 of file elements.h.
References fill_in_contribution_to_residuals(), and oomph::Vector< _Tp >::initialise().
Referenced by oomph::KirchhoffLoveBeamEquations::fill_in_contribution_to_jacobian(), oomph::ElementWithExternalElement::fill_in_contribution_to_jacobian(), fill_in_contribution_to_jacobian(), oomph::FiniteElement::fill_in_contribution_to_jacobian(), oomph::SolidFiniteElement::fill_in_contribution_to_jacobian(), oomph::FSIWallElement::fill_in_contribution_to_jacobian(), oomph::KirchhoffLoveShellEquations::fill_in_contribution_to_jacobian(), oomph::PeriodicOrbitEquations::fill_in_generic_residual_contribution_orbit(), fill_in_jacobian_from_external_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_field_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_geometric_by_fd(), oomph::ElementWithMovingNodes::fill_in_jacobian_from_geometric_data(), fill_in_jacobian_from_internal_by_fd(), oomph::FiniteElement::fill_in_jacobian_from_nodal_by_fd(), oomph::RefineableElement::fill_in_jacobian_from_nodal_by_fd(), oomph::SolidFiniteElement::fill_in_jacobian_from_solid_position_by_fd(), oomph::RefineableSolidElement::fill_in_jacobian_from_solid_position_by_fd(), oomph::FiniteElement::get_dresidual_dnodal_coordinates(), oomph::RefineableElement::get_dresidual_dnodal_coordinates(), oomph::AssemblyHandler::get_residuals(), oomph::ExplicitTimeStepHandler::get_residuals(), oomph::FoldHandler::get_residuals(), and oomph::PitchForkHandler::get_residuals().
|
inline |
Set the boolean flag to include the external datum in the the finite difference loop when computing the jacobian matrix.
Definition at line 798 of file elements.h.
References Data_fd, i, Nexternal_data, and Ninternal_data.
|
inlineprotected |
Set the boolean flag to include the internal datum in the finite difference loop when computing the jacobian matrix.
Definition at line 187 of file elements.h.
References Data_fd, i, and Ninternal_data.
|
inlineprotected |
Return the status of the boolean flag indicating whether the internal data is included in the finite difference loop.
Definition at line 146 of file elements.h.
References Data_fd, i, and Ninternal_data.
Referenced by fill_in_jacobian_from_internal_by_fd().
|
inline |
Return a pointer to i-th internal data object.
Definition at line 622 of file elements.h.
References Data_pt, i, and Ninternal_data.
Referenced by oomph::IMRByBDF::actions_after_timestep(), oomph::PeriodicOrbitAssemblyHandler< NNODE_1D >::adapt_temporal_mesh(), add_internal_data(), add_internal_data_values_to_vector(), add_internal_eqn_numbers_to_vector(), add_internal_value_pt_to_map(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), assign_internal_and_external_local_eqn_numbers(), assign_internal_eqn_numbers(), assign_local_eqn_numbers(), oomph::SolidICProblem::backup_original_state(), oomph::Mesh::classify_halo_and_haloed_nodes(), oomph::Problem::copy(), oomph::LinearisedQCrouzeixRaviartElement::copy_efunction_to_normalisation(), oomph::ProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >::data_values_of_field(), oomph::GeneralisedNewtonianProjectableAxisymmetricCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >::data_values_of_field(), oomph::ProjectableGeneralisedNewtonianCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >::data_values_of_field(), oomph::ProjectableCrouzeixRaviartElement< CROUZEIX_RAVIART_ELEMENT >::data_values_of_field(), describe_dofs(), describe_local_dofs(), oomph::FSI_functions::doc_fsi(), oomph::Mesh::does_pointer_correspond_to_mesh_data(), oomph::AxisymmetricPoroelasticityEquations::dq_internal_dt(), oomph::PoroelasticityEquations< DIM >::dq_internal_dt(), oomph::Mesh::dump(), oomph::LinearisedNavierStokesEigenfunctionNormalisationElement::eigenvalue_data_pt(), oomph::ODEElement::fill_in_contribution_to_jacobian(), oomph::ODEElement::fill_in_contribution_to_residuals(), oomph::AxisymmetricPoroelasticityEquations::fill_in_generic_residual_contribution(), fill_in_jacobian_from_internal_by_fd(), oomph::AxisymmetricTCrouzeixRaviartElement::fix_pressure(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::fix_pressure(), oomph::GeneralisedNewtonianQCrouzeixRaviartElement< DIM >::fix_pressure(), oomph::PRefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::fix_pressure(), oomph::GeneralisedNewtonianTCrouzeixRaviartElement< DIM >::fix_pressure(), oomph::QCrouzeixRaviartElement< DIM >::fix_pressure(), oomph::PRefineableQCrouzeixRaviartElement< DIM >::fix_pressure(), oomph::TCrouzeixRaviartElement< DIM >::fix_pressure(), oomph::PolarCrouzeixRaviartElement::fix_pressure(), oomph::QSphericalCrouzeixRaviartElement::fix_pressure(), oomph::AxisymmetricQCrouzeixRaviartElement::fix_pressure(), oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::fix_pressure(), oomph::LinearisedAxisymmetricQCrouzeixRaviartElement::fix_pressure(), oomph::LinearisedQCrouzeixRaviartElement::fix_pressure(), oomph::AxisymQPVDElementWithPressure::fix_solid_pressure(), oomph::QPVDElementWithPressure< DIM >::fix_solid_pressure(), oomph::RefineableAxisymmetricQCrouzeixRaviartElement::further_build(), oomph::RefineableGeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::further_build(), oomph::RefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::further_build(), oomph::RefineableLinearisedAxisymmetricQCrouzeixRaviartElement::further_build(), oomph::RefineableLinearisedQCrouzeixRaviartElement::further_build(), oomph::RefineableQCrouzeixRaviartElement< DIM >::further_build(), oomph::RefineablePolarCrouzeixRaviartElement::further_build(), oomph::RefineableQSphericalCrouzeixRaviartElement::further_build(), oomph::Problem::get_dofs(), oomph::PolarCrouzeixRaviartElement::get_load_data(), oomph::FiniteElement::identify_field_data_for_interactions(), oomph::RefineableElement::identify_field_data_for_interactions(), oomph::RefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::identify_load_data(), oomph::RefineableQCrouzeixRaviartElement< DIM >::identify_load_data(), oomph::AxisymmetricTCrouzeixRaviartElement::identify_pressure_data(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::identify_pressure_data(), oomph::QSphericalCrouzeixRaviartElement::identify_pressure_data(), oomph::RefineablePolarCrouzeixRaviartElement::insert_load_data(), internal_local_eqn(), oomph::HeightControlElement::kappa_pt(), oomph::ODEElement::nvalue(), oomph::AxisymmetricQCrouzeixRaviartElement::p_axi_nst(), oomph::AxisymmetricTCrouzeixRaviartElement::p_axi_nst(), oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::p_axi_nst(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::p_axi_nst(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::p_data_pt(), oomph::TRaviartThomasDarcyElement< ORDER >::p_data_pt(), oomph::LinearisedAxisymmetricQCrouzeixRaviartElement::p_linearised_axi_nst(), oomph::LinearisedQCrouzeixRaviartElement::p_linearised_nst(), oomph::GeneralisedNewtonianQCrouzeixRaviartElement< DIM >::p_nst(), oomph::PRefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::p_nst(), oomph::GeneralisedNewtonianTCrouzeixRaviartElement< DIM >::p_nst(), oomph::QCrouzeixRaviartElement< DIM >::p_nst(), oomph::PRefineableQCrouzeixRaviartElement< DIM >::p_nst(), oomph::TCrouzeixRaviartElement< DIM >::p_nst(), oomph::PolarCrouzeixRaviartElement::p_pnst(), oomph::QSphericalCrouzeixRaviartElement::p_spherical_nst(), oomph::VolumeConstraintElement::p_traded_data_pt(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::p_value(), oomph::TPoroelasticityElement< ORDER >::p_value(), oomph::ProjectionProblem< PROJECTABLE_ELEMENT >::pin_all(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::pin_all_non_pressure_dofs(), oomph::NavierStokesEquations< DIM >::pin_all_non_pressure_dofs(), oomph::SpaceTimeNavierStokesEquations< DIM >::pin_all_non_pressure_dofs(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::pin_all_non_pressure_dofs(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::pin_p_value(), oomph::TRaviartThomasDarcyElement< ORDER >::pin_p_value(), oomph::TPoroelasticityElement< ORDER >::pin_p_value(), oomph::LinearisedQCrouzeixRaviartElement::pin_pressure_normalisation_dofs(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::pin_q_internal_value(), oomph::TRaviartThomasDarcyElement< ORDER >::pin_q_internal_value(), oomph::TPoroelasticityElement< ORDER >::pin_q_internal_value(), oomph::LinearisedQCrouzeixRaviartElement::pin_real_or_imag(), oomph::PRefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::PRefineableGeneralisedNewtonianQCrouzeixRaviartElement(), oomph::PRefineableQCrouzeixRaviartElement< DIM >::PRefineableQCrouzeixRaviartElement(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::q_internal(), oomph::TRaviartThomasDarcyElement< ORDER >::q_internal(), oomph::TPoroelasticityElement< ORDER >::q_internal(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::q_internal_data_pt(), oomph::TRaviartThomasDarcyElement< ORDER >::q_internal_data_pt(), oomph::Mesh::read(), read_internal_data_values_from_vector(), read_internal_eqn_numbers_from_vector(), oomph::RefineableAxisymmetricQCrouzeixRaviartElement::rebuild_from_sons(), oomph::RefineableGeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::rebuild_from_sons(), oomph::PRefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::rebuild_from_sons(), oomph::RefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::rebuild_from_sons(), oomph::RefineableLinearisedAxisymmetricQCrouzeixRaviartElement::rebuild_from_sons(), oomph::RefineableLinearisedQCrouzeixRaviartElement::rebuild_from_sons(), oomph::PRefineableQCrouzeixRaviartElement< DIM >::rebuild_from_sons(), oomph::RefineablePolarCrouzeixRaviartElement::rebuild_from_sons(), oomph::RefineableQSphericalCrouzeixRaviartElement::rebuild_from_sons(), oomph::SolidICProblem::reset_original_state(), oomph::NavierStokesSchurComplementPreconditioner::reset_pin_status(), self_test(), oomph::Mesh::set_consistent_pinned_values_for_continuation(), oomph::Problem::set_dofs(), set_internal_data_time_stepper(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::set_p_value(), oomph::TRaviartThomasDarcyElement< ORDER >::set_p_value(), oomph::Problem::set_pinned_values_to_zero(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::set_q_internal(), oomph::TRaviartThomasDarcyElement< ORDER >::set_q_internal(), oomph::AxisymmetricPoroelasticityEquations::set_q_internal_timestepper(), oomph::PoroelasticityEquations< DIM >::set_q_internal_timestepper(), oomph::QPVDElementWithPressure< DIM >::set_solid_p(), oomph::SolidICProblem::setup_problem(), oomph::AxisymQPVDElementWithPressure::solid_p(), oomph::QPVDElementWithPressure< DIM >::solid_p(), oomph::Problem::synchronise_eqn_numbers(), oomph::BuoyantQCrouzeixRaviartElement< DIM >::unfix_pressure(), oomph::AxisymmetricTCrouzeixRaviartElement::unpin_all_internal_pressure_dofs(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::unpin_all_internal_pressure_dofs(), oomph::RefineableAxisymmetricQCrouzeixRaviartElement::unpin_elemental_pressure_dofs(), oomph::RefineableGeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::unpin_elemental_pressure_dofs(), oomph::RefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::unpin_elemental_pressure_dofs(), oomph::PRefineableGeneralisedNewtonianQCrouzeixRaviartElement< DIM >::unpin_elemental_pressure_dofs(), oomph::RefineableLinearisedAxisymmetricQCrouzeixRaviartElement::unpin_elemental_pressure_dofs(), oomph::RefineableLinearisedQCrouzeixRaviartElement::unpin_elemental_pressure_dofs(), oomph::RefineableQCrouzeixRaviartElement< DIM >::unpin_elemental_pressure_dofs(), oomph::PRefineableQCrouzeixRaviartElement< DIM >::unpin_elemental_pressure_dofs(), oomph::RefineablePolarCrouzeixRaviartElement::unpin_elemental_pressure_dofs(), oomph::RefineableQSphericalCrouzeixRaviartElement::unpin_elemental_pressure_dofs(), oomph::RefineableQPVDElementWithPressure< DIM >::unpin_elemental_solid_pressure_dofs(), oomph::QPVDElementWithPressure< DIM >::unpin_elemental_solid_pressure_dofs(), oomph::LinearisedQCrouzeixRaviartElement::unpin_real_or_imag(), and oomph::ImmersedRigidBodyElement::~ImmersedRigidBodyElement().
|
inline |
Return a pointer to i-th internal data object (const version)
Definition at line 640 of file elements.h.
References Data_pt, i, and Ninternal_data.
|
inlineprotected |
Return the local equation number corresponding to the j-th value stored at the i-th internal data.
Definition at line 267 of file elements.h.
References Data_local_eqn, i, internal_data_pt(), Ninternal_data, and oomph::Data::nvalue().
Referenced by oomph::FoepplvonKarmanVolumeConstraintElement< ELEMENT, MESH >::assign_additional_local_eqn_numbers(), oomph::DisplacementControlElement::assign_additional_local_eqn_numbers(), oomph::HeightControlElement::assign_additional_local_eqn_numbers(), oomph::ImmersedRigidBodyElement::centre_displacement_local_eqn(), oomph::LinearisedNavierStokesEigenfunctionNormalisationElement::eigenvalue_local_eqn(), oomph::NavierStokesWomersleyPressureControlElement::fill_in_generic_residual_contribution_pressure_control(), fill_in_jacobian_from_internal_by_fd(), oomph::PseudoBucklingRingElement::geometric_local_eqn(), oomph::ImposeFluxForWomersleyElement< DIM >::get_residuals(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::p_local_eqn(), oomph::PolarCrouzeixRaviartElement::p_local_eqn(), oomph::AxisymmetricQCrouzeixRaviartElement::p_local_eqn(), oomph::AxisymmetricTCrouzeixRaviartElement::p_local_eqn(), oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::p_local_eqn(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::p_local_eqn(), oomph::GeneralisedNewtonianQCrouzeixRaviartElement< DIM >::p_local_eqn(), oomph::GeneralisedNewtonianTCrouzeixRaviartElement< DIM >::p_local_eqn(), oomph::QCrouzeixRaviartElement< DIM >::p_local_eqn(), oomph::TCrouzeixRaviartElement< DIM >::p_local_eqn(), oomph::TPoroelasticityElement< ORDER >::p_local_eqn(), oomph::QSphericalCrouzeixRaviartElement::p_local_eqn(), oomph::LinearisedAxisymmetricQCrouzeixRaviartElement::p_local_eqn(), oomph::LinearisedQCrouzeixRaviartElement::p_local_eqn(), oomph::VolumeConstraintElement::ptraded_local_eqn(), oomph::TAxisymmetricPoroelasticityElement< ORDER >::q_internal_local_eqn(), oomph::TRaviartThomasDarcyElement< ORDER >::q_internal_local_eqn(), oomph::TPoroelasticityElement< ORDER >::q_internal_local_eqn(), oomph::AxisymQPVDElementWithPressure::solid_p_local_eqn(), and oomph::QPVDElementWithPressure< DIM >::solid_p_local_eqn().
|
inline |
Is this element a halo?
Definition at line 1163 of file elements.h.
References Non_halo_proc_ID.
Referenced by oomph::RefineableTriangleMesh< ELEMENT >::adapt(), oomph::NavierStokesSchurComplementPreconditioner::assemble_inv_press_and_veloc_mass_matrix_diagonal(), oomph::PressureBasedSolidLSCPreconditioner::assemble_mass_matrix_diagonal(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), assign_local_eqn_numbers(), oomph::Multi_domain_functions::aux_setup_multi_domain_interaction(), oomph::Mesh::classify_halo_and_haloed_nodes(), oomph::TriangleMesh< ELEMENT >::compute_boundary_segments_connectivity_and_initial_zeta_values(), oomph::Mesh::compute_error(), oomph::TriangleMesh< ELEMENT >::compute_holes_left_by_halo_elements_helper(), oomph::Mesh::compute_norm(), oomph::Multi_domain_functions::create_external_halo_elements(), oomph::Mesh::distribute(), oomph::FSI_functions::doc_fsi(), oomph::Mesh::doc_mesh_distribution(), oomph::Problem::dump(), oomph::RefineableTriangleMesh< ELEMENT >::get_boundary_segment_nodes_helper(), oomph::Problem::get_data_to_be_sent_during_load_balancing(), oomph::Z2ErrorEstimator::get_element_errors(), oomph::Problem::get_flat_packed_refinement_pattern_for_load_balancing(), oomph::Problem::get_hessian_vector_products(), oomph::Problem::get_my_eqns(), oomph::RefineableTriangleMesh< ELEMENT >::get_shared_boundary_elements_and_face_indexes(), oomph::RefineableTriangleMesh< ELEMENT >::get_shared_boundary_segment_nodes_helper(), oomph::TriangleMesh< ELEMENT >::identify_boundary_segments_and_assign_initial_zeta_values(), oomph::RefineableTriangleMesh< ELEMENT >::load_balance(), oomph::Problem::load_balance(), oomph::Multi_domain_functions::locate_zeta_for_local_coordinates(), oomph::Multi_domain_functions::locate_zeta_for_missing_coordinates(), oomph::Mesh::output(), oomph::FSISolidTractionElement< ELEMENT, DIM >::output(), oomph::TriangleMesh< ELEMENT >::output_boundary_coordinates(), oomph::Mesh::output_fct(), oomph::Problem::parallel_sparse_assemble(), oomph::METIS::partition_distributed_mesh(), oomph::PitchForkHandler::PitchForkHandler(), oomph::Problem::prune_halo_elements_and_nodes(), oomph::Mesh::prune_halo_elements_and_nodes(), oomph::TriangleMesh< ELEMENT >::re_assign_initial_zeta_values_for_internal_boundary(), oomph::TriangleMesh< ELEMENT >::re_scale_re_assigned_initial_zeta_values_for_internal_boundary(), oomph::Problem::read(), oomph::UnstructuredTwoDMeshGeometryBase::setup_boundary_coordinates(), oomph::Problem::setup_element_count_per_dof(), oomph::RefineableTriangleMesh< ELEMENT >::snap_nodes_onto_boundary(), oomph::Problem::sparse_assemble_row_or_column_compressed_with_lists(), oomph::Problem::sparse_assemble_row_or_column_compressed_with_maps(), oomph::Problem::sparse_assemble_row_or_column_compressed_with_two_arrays(), oomph::Problem::sparse_assemble_row_or_column_compressed_with_two_vectors(), oomph::Problem::sparse_assemble_row_or_column_compressed_with_vectors_of_pairs(), oomph::TriangleMesh< ELEMENT >::synchronize_boundary_coordinates(), oomph::RefineableTriangleMesh< ELEMENT >::update_open_curve_after_restart(), oomph::RefineableTriangleMesh< ELEMENT >::update_open_curve_using_elements_area(), oomph::RefineableTriangleMesh< ELEMENT >::update_polygon_after_restart(), oomph::RefineableTriangleMesh< ELEMENT >::update_polygon_using_elements_area(), oomph::RefineableTriangleMesh< ELEMENT >::update_polygon_using_face_mesh(), oomph::RefineableTriangleMesh< ELEMENT >::update_shared_curve_after_restart(), and oomph::RefineableTriangleMesh< ELEMENT >::update_shared_curve_using_elements_area().
|
inline |
Return the local equation number corresponding to the ieqn_global-th global equation number. Returns minus one (-1) if there is no local degree of freedom corresponding to the chosen global equation number.
Definition at line 726 of file elements.h.
References Eqn_number, and Ndof.
Referenced by oomph::ElementWithMovingNodes::assign_all_generic_local_eqn_numbers(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), oomph::RefineableElement::assign_hanging_local_eqn_numbers(), assign_internal_and_external_local_eqn_numbers(), oomph::FiniteElement::assign_nodal_local_eqn_numbers(), oomph::RefineableSolidElement::assign_solid_hanging_local_eqn_numbers(), oomph::SolidFiniteElement::assign_solid_local_eqn_numbers(), oomph::BiharmonicFluidBoundaryElement::fill_in_generic_residual_contribution_biharmonic_boundary(), oomph::RefineableNavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_off_diagonal_block_analytic(), oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >::fill_in_off_diagonal_block_analytic(), oomph::NavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >::fill_in_off_diagonal_block_analytic(), oomph::AdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >::fill_in_off_diagonal_block_analytic(), oomph::AxisymmetricQCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::AxisymmetricQTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::AxisymmetricTCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::AxisymmetricTTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::BiharmonicEquations< DIM >::get_dof_numbers_for_unknowns(), oomph::TDisplacementBasedFoepplvonKarmanElement< NNODE_1D >::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricQTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianAxisymmetricTTaylorHoodElement::get_dof_numbers_for_unknowns(), oomph::GeneralisedNewtonianTTaylorHoodElement< DIM >::get_dof_numbers_for_unknowns(), oomph::DisplacementControlElement::get_dof_numbers_for_unknowns(), oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >::get_dof_numbers_for_unknowns(), oomph::TTaylorHoodElement< DIM >::get_dof_numbers_for_unknowns(), oomph::PMLHelmholtzEquations< DIM >::get_dof_numbers_for_unknowns(), oomph::PMLHelmholtzFluxElement< ELEMENT >::get_dof_numbers_for_unknowns(), oomph::BlockPrecQTaylorHoodSpaceTimeElement::get_dof_numbers_for_unknowns(), oomph::BlockPrecQTaylorHoodMixedOrderSpaceTimeElement::get_dof_numbers_for_unknowns(), oomph::QSphericalCrouzeixRaviartElement::get_dof_numbers_for_unknowns(), and oomph::QSphericalTaylorHoodElement::get_dof_numbers_for_unknowns().
|
inline |
Test whether the element must be kept as a halo element.
Definition at line 1189 of file elements.h.
References Must_be_kept_as_halo.
Referenced by oomph::Mesh::distribute(), oomph::TriangleMesh< ELEMENT >::get_halo_elements_on_all_procs(), and oomph::Mesh::prune_halo_elements_and_nodes().
|
inline |
Return the number of equations/dofs in the element.
Definition at line 835 of file elements.h.
References Ndof.
Referenced by oomph::NavierStokesSchurComplementPreconditioner::assemble_inv_press_and_veloc_mass_matrix_diagonal(), oomph::PressureBasedSolidLSCPreconditioner::assemble_mass_matrix_diagonal(), oomph::ElementWithMovingNodes::assign_all_generic_local_eqn_numbers(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), oomph::RefineableElement::assign_hanging_local_eqn_numbers(), assign_internal_and_external_local_eqn_numbers(), oomph::FiniteElement::assign_nodal_local_eqn_numbers(), oomph::RefineableSolidElement::assign_solid_hanging_local_eqn_numbers(), oomph::SolidFiniteElement::assign_solid_local_eqn_numbers(), oomph::FoldHandler::eqn_number(), oomph::PitchForkHandler::eqn_number(), oomph::HopfHandler::eqn_number(), oomph::PeriodicOrbitAssemblyHandler< NNODE_1D >::eqn_number(), oomph::AxisymmetricNavierStokesEquations::fill_in_contribution_to_hessian_vector_products(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::fill_in_contribution_to_hessian_vector_products(), oomph::KirchhoffLoveBeamEquations::fill_in_contribution_to_jacobian(), oomph::ElementWithExternalElement::fill_in_contribution_to_jacobian(), oomph::FiniteElement::fill_in_contribution_to_jacobian(), oomph::SolidFiniteElement::fill_in_contribution_to_jacobian(), oomph::FSIWallElement::fill_in_contribution_to_jacobian(), oomph::KirchhoffLoveShellEquations::fill_in_contribution_to_jacobian(), oomph::DisplacementBasedFoepplvonKarmanEquations::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::PVDEquationsWithPressure< DIM >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::fill_in_generic_residual_contribution_axi_nst(), oomph::PeriodicOrbitEquations::fill_in_generic_residual_contribution_orbit(), oomph::SphericalNavierStokesEquations::fill_in_generic_residual_contribution_spherical_nst(), fill_in_jacobian_from_external_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_field_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_geometric_by_fd(), oomph::ElementWithMovingNodes::fill_in_jacobian_from_geometric_data(), fill_in_jacobian_from_internal_by_fd(), oomph::FiniteElement::fill_in_jacobian_from_nodal_by_fd(), oomph::RefineableElement::fill_in_jacobian_from_nodal_by_fd(), oomph::SolidFiniteElement::fill_in_jacobian_from_solid_position_by_fd(), oomph::RefineableSolidElement::fill_in_jacobian_from_solid_position_by_fd(), oomph::BuoyantQCrouzeixRaviartElement< DIM >::fill_in_off_diagonal_jacobian_blocks_by_fd(), oomph::FoldHandler::FoldHandler(), oomph::EigenProblemHandler::get_all_vectors_and_matrices(), oomph::AxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::RefineableAxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::RefineableGeneralisedNewtonianAxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::FiniteElement::get_dresidual_dnodal_coordinates(), oomph::RefineableElement::get_dresidual_dnodal_coordinates(), oomph::FoldHandler::get_dresiduals_dparameter(), oomph::PitchForkHandler::get_dresiduals_dparameter(), oomph::HopfHandler::get_dresiduals_dparameter(), oomph::PeriodicOrbitBaseElement::get_inner_product_matrix(), oomph::Problem::get_inverse_mass_matrix_times_residuals(), oomph::DGElement::get_inverse_mass_matrix_times_residuals(), oomph::FoldHandler::get_jacobian(), oomph::PitchForkHandler::get_jacobian(), oomph::HopfHandler::get_jacobian(), oomph::FpPreconditionerAssemblyHandler::get_jacobian(), oomph::ImposeFluxForWomersleyElement< DIM >::get_jacobian(), oomph::AxisymmetricNavierStokesEquations::get_pressure_and_velocity_mass_matrix_diagonal(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::get_pressure_and_velocity_mass_matrix_diagonal(), oomph::SphericalNavierStokesEquations::get_pressure_and_velocity_mass_matrix_diagonal(), oomph::FoldHandler::get_residuals(), oomph::PitchForkHandler::get_residuals(), oomph::HopfHandler::get_residuals(), oomph::FpPreconditionerAssemblyHandler::get_residuals(), oomph::HopfHandler::HopfHandler(), oomph::AssemblyHandler::ndof(), oomph::ExplicitTimeStepHandler::ndof(), oomph::EigenProblemHandler::ndof(), oomph::FoldHandler::ndof(), oomph::PitchForkHandler::ndof(), oomph::HopfHandler::ndof(), oomph::PeriodicOrbitAssemblyHandler< NNODE_1D >::ndof(), oomph::METIS::partition_distributed_mesh(), oomph::METIS::partition_mesh(), oomph::DGElement::pre_compute_mass_matrix(), oomph::AugmentedBlockFoldLinearSolver::solve(), oomph::BlockHopfLinearSolver::solve(), and oomph::BlockHopfLinearSolver::solve_for_two_rhs().
|
inlinevirtual |
The number of types of degrees of freedom in this element are sub-divided into.
Reimplemented in oomph::NetFluxControlElementForWomersleyPressureControl, oomph::NavierStokesWomersleyPressureControlElement, oomph::TimeHarmonicLinearElasticityEquationsBase< DIM >, oomph::TimeHarmonicFourierDecomposedLinearElasticityEquationsBase, oomph::QSphericalTaylorHoodElement, oomph::QSphericalCrouzeixRaviartElement, oomph::QTaylorHoodSpaceTimeElement< DIM >, oomph::QTaylorHoodSpaceTimeElement< 2 >, oomph::BlockPreconditionableSpaceTimeElementBase, oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >, oomph::FSISolidTractionElement< ELEMENT, DIM >, oomph::PVDEquationsWithPressure< DIM >, oomph::PVDEquationsBase< DIM >, oomph::ClampedHermiteShellBoundaryConditionElement, oomph::FSIDiagHermiteShellElement, oomph::PMLTimeHarmonicLinearElasticityEquationsBase< DIM >, oomph::PMLHelmholtzFluxElement< ELEMENT >, oomph::PMLHelmholtzEquations< DIM >, oomph::TTaylorHoodElement< DIM >, oomph::TCrouzeixRaviartElement< DIM >, oomph::NetFluxControlElement, oomph::QTaylorHoodElement< DIM >, oomph::QCrouzeixRaviartElement< DIM >, oomph::ImposeParallelOutflowElement< ELEMENT >, oomph::ImposeImpenetrabilityElement< ELEMENT >, oomph::RefineableAdvectionDiffusionBoussinesqElement< AD_ELEMENT, NST_ELEMENT >, oomph::RefineableNavierStokesBoussinesqElement< NST_ELEMENT, AD_ELEMENT >, oomph::LinearisedQTaylorHoodElement, oomph::LinearisedQCrouzeixRaviartElement, oomph::LinearisedAxisymmetricQTaylorHoodElement, oomph::LinearisedAxisymmetricQCrouzeixRaviartElement, oomph::LinearElasticityEquationsBase< DIM >, oomph::DisplacementControlElement, oomph::GeneralisedNewtonianTTaylorHoodElement< DIM >, oomph::GeneralisedNewtonianTCrouzeixRaviartElement< DIM >, oomph::GeneralisedNewtonianQTaylorHoodElement< DIM >, oomph::GeneralisedNewtonianQCrouzeixRaviartElement< DIM >, oomph::GeneralisedNewtonianAxisymmetricTTaylorHoodElement, oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement, oomph::GeneralisedNewtonianAxisymmetricQTaylorHoodElement, oomph::GeneralisedNewtonianAxisymmetricQCrouzeixRaviartElement, oomph::TDisplacementBasedFoepplvonKarmanElement< NNODE_1D >, oomph::BiharmonicEquations< DIM >, oomph::FSIHermiteBeamElement, oomph::AxisymmetricTTaylorHoodElement, oomph::AxisymmetricTCrouzeixRaviartElement, oomph::AxisymmetricQTaylorHoodElement, oomph::AxisymmetricQCrouzeixRaviartElement, and oomph::AxisymmetricLinearElasticityEquationsBase.
Definition at line 1202 of file elements.h.
|
inline |
Return the number of external data objects.
Definition at line 829 of file elements.h.
References Nexternal_data.
Referenced by oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), assign_local_eqn_numbers(), oomph::SolidICProblem::backup_original_state(), oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >::fill_in_generic_residual_contribution_fourier_decomposed_helmholtz_DtN_bc(), oomph::HelmholtzDtNBoundaryElement< ELEMENT >::fill_in_generic_residual_contribution_helmholtz_DtN_bc(), oomph::DGElement::get_inverse_mass_matrix_times_residuals(), oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::set_boundary_shape_geom_object_pt(), and oomph::FluidInterfaceElement::set_external_pressure_data().
|
inline |
Return the number of internal data objects.
Definition at line 823 of file elements.h.
References Ninternal_data.
Referenced by oomph::IMRByBDF::actions_after_timestep(), oomph::PeriodicOrbitAssemblyHandler< NNODE_1D >::adapt_temporal_mesh(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), assign_local_eqn_numbers(), oomph::SolidICProblem::backup_original_state(), oomph::BackupMeshForProjection< GEOMETRIC_ELEMENT >::BackupMeshForProjection(), oomph::Mesh::classify_halo_and_haloed_nodes(), oomph::Problem::copy(), oomph::FSI_functions::doc_fsi(), oomph::Mesh::does_pointer_correspond_to_mesh_data(), oomph::Mesh::dump(), oomph::Problem::get_dofs(), oomph::PolarCrouzeixRaviartElement::get_load_data(), oomph::FiniteElement::identify_field_data_for_interactions(), oomph::RefineableElement::identify_field_data_for_interactions(), oomph::AxisymmetricTCrouzeixRaviartElement::identify_pressure_data(), oomph::GeneralisedNewtonianAxisymmetricTCrouzeixRaviartElement::identify_pressure_data(), oomph::QSphericalCrouzeixRaviartElement::identify_pressure_data(), oomph::ProjectionProblem< PROJECTABLE_ELEMENT >::pin_all(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::pin_all_non_pressure_dofs(), oomph::NavierStokesEquations< DIM >::pin_all_non_pressure_dofs(), oomph::SpaceTimeNavierStokesEquations< DIM >::pin_all_non_pressure_dofs(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::pin_all_non_pressure_dofs(), oomph::Mesh::read(), oomph::SolidICProblem::reset_original_state(), oomph::NavierStokesSchurComplementPreconditioner::reset_pin_status(), oomph::Mesh::set_consistent_pinned_values_for_continuation(), oomph::Problem::set_dofs(), oomph::Problem::set_pinned_values_to_zero(), oomph::SolidICProblem::setup_problem(), and oomph::Problem::synchronise_eqn_numbers().
|
inline |
ID of processor ID that holds non-halo counterpart of halo element; negative if not a halo.
Definition at line 1170 of file elements.h.
References Non_halo_proc_ID.
Referenced by oomph::TriangleMesh< ELEMENT >::compute_boundary_segments_connectivity_and_initial_zeta_values(), oomph::TriangleMesh< ELEMENT >::select_boundary_face_elements(), set_halo(), and oomph::TriangleMesh< ELEMENT >::synchronize_boundary_coordinates().
|
delete |
Broken assignment operator.
void oomph::GeneralisedElement::read_internal_data_values_from_vector | ( | const Vector< double > & | vector_of_values, |
unsigned & | index | ||
) |
Read all internal data and time history values from the vector starting from index. On return the index will be set to the value at the end of the data that has been read in.
Definition at line 642 of file elements.cc.
References i, internal_data_pt(), Ninternal_data, and oomph::Data::read_values_from_vector().
Referenced by oomph::Problem::send_data_to_be_sent_during_load_balancing(), and oomph::Problem::synchronise_dofs().
void oomph::GeneralisedElement::read_internal_eqn_numbers_from_vector | ( | const Vector< long > & | vector_of_eqn_numbers, |
unsigned & | index | ||
) |
Read all equation numbers associated with internal data from the vector starting from index. On return the index will be set to the value at the end of the data that has been read in.
Definition at line 670 of file elements.cc.
References i, internal_data_pt(), Ninternal_data, and oomph::Data::read_eqn_numbers_from_vector().
Referenced by oomph::Problem::copy_haloed_eqn_numbers_helper().
|
inlineprotectedvirtual |
Function that is call after the finite differencing of the external data. This may be overloaded to reset any dependent variables that may have changed during the finite differencing.
Reimplemented in oomph::ImmersedRigidBodyElement, oomph::FSIWallElement, and oomph::FluidInterfaceBoundingElement.
Definition at line 478 of file elements.h.
Referenced by fill_in_jacobian_from_external_by_fd().
|
inlineprotectedvirtual |
Function that is call after the finite differencing of the internal data. This may be overloaded to reset any dependent variables that may have changed during the finite differencing.
Reimplemented in oomph::ImmersedRigidBodyElement, and oomph::FSIWallElement.
Definition at line 454 of file elements.h.
Referenced by fill_in_jacobian_from_internal_by_fd().
|
inlineprotectedvirtual |
Function called within the finite difference loop for external data after the values in the i-th external data object are reset. The default behaviour is to call the update function.
Reimplemented in oomph::ImmersedRigidBodyElement, oomph::FSIWallElement, and oomph::FluidInterfaceBoundingElement.
Definition at line 488 of file elements.h.
References i, and update_in_external_fd().
Referenced by fill_in_jacobian_from_external_by_fd().
|
inlineprotectedvirtual |
Function called within the finite difference loop for internal data after the values in the i-th external data object are reset. The default behaviour is to call the update function.
Reimplemented in oomph::ImmersedRigidBodyElement, and oomph::FSIWallElement.
Definition at line 464 of file elements.h.
References i, and update_in_internal_fd().
Referenced by fill_in_jacobian_from_internal_by_fd().
|
virtual |
Self-test: Have all internal values been classified as pinned/unpinned? Return 0 if OK.
Reimplemented in oomph::YoungLaplaceEquations, oomph::WomersleyEquations< DIM >, oomph::UnsteadyHeatEquations< DIM >, oomph::SteadyAxisymAdvectionDiffusionEquations, oomph::SphericalAdvectionDiffusionEquations, oomph::SpaceTimeUnsteadyHeatMixedOrderEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >, oomph::PoroelasticityEquations< DIM >, oomph::PoroelasticityEquations< 2 >, oomph::PoissonEquations< DIM >, oomph::PMLHelmholtzEquations< DIM >, oomph::PMLFourierDecomposedHelmholtzEquations, oomph::LinearWaveEquations< DIM >, oomph::HelmholtzEquations< DIM >, oomph::FiniteElement, oomph::FourierDecomposedHelmholtzEquations, oomph::FoepplvonKarmanEquations, oomph::DisplacementBasedFoepplvonKarmanEquations, oomph::DarcyEquations< DIM >, oomph::DarcyEquations< 2 >, oomph::BiharmonicEquations< DIM >, oomph::AxisymmetricPoroelasticityEquations, oomph::AxisymFoepplvonKarmanEquations, oomph::AxisymFoepplvonKarmanEquations, oomph::GeneralisedAxisymAdvectionDiffusionEquations, oomph::AxisymAdvectionDiffusionEquations, oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >, oomph::GeneralisedAdvectionDiffusionEquations< DIM >, and oomph::AdvectionDiffusionEquations< DIM >.
Definition at line 1603 of file elements.cc.
References external_data_pt(), i, internal_data_pt(), Nexternal_data, Ninternal_data, and oomph::oomph_info.
Referenced by oomph::FiniteElement::self_test().
|
inline |
Label the element as halo and specify processor that holds non-halo counterpart.
Definition at line 1151 of file elements.h.
References Non_halo_proc_ID, and non_halo_proc_ID().
Referenced by oomph::Mesh::add_external_halo_element_pt(), oomph::Mesh::add_root_halo_element_pt(), oomph::FiniteElement::build_face_element(), oomph::QHermiteElement< DIM >::build_face_element(), oomph::QSpectralElement< 1, NNODE_1D >::build_face_element(), oomph::QSpectralElement< 2, NNODE_1D >::build_face_element(), oomph::QSpectralElement< 3, NNODE_1D >::build_face_element(), oomph::TElement< 1, NNODE_1D >::build_face_element(), oomph::TElement< 2, NNODE_1D >::build_face_element(), and oomph::TElement< 3, NNODE_1D >::build_face_element().
|
inline |
Set the timestepper associated with the i-th internal data object.
Definition at line 893 of file elements.h.
References internal_data_pt(), and oomph::Data::set_time_stepper().
|
inline |
Insist that this element be kept as a halo element during a distribute?
Definition at line 1176 of file elements.h.
References Must_be_kept_as_halo.
|
inline |
Label the element as not being a halo.
Definition at line 1157 of file elements.h.
References Non_halo_proc_ID.
|
inline |
Do not insist that this element be kept as a halo element during distribution.
Definition at line 1183 of file elements.h.
References Must_be_kept_as_halo.
|
inlineprotectedvirtual |
Function that is called before the finite differencing of any external data. This may be overloaded to update any dependent data before finite differencing takes place.
Definition at line 473 of file elements.h.
Referenced by fill_in_jacobian_from_external_by_fd().
|
inlineprotectedvirtual |
Function that is called before the finite differencing of any internal data. This may be overloaded to update any dependent data before finite differencing takes place.
Definition at line 449 of file elements.h.
Referenced by fill_in_jacobian_from_internal_by_fd().
|
inlineprotectedvirtual |
Function called within the finite difference loop for external data after a change in any values in the i-th external data object.
Reimplemented in oomph::ImmersedRigidBodyElement, oomph::FSIWallElement, and oomph::FluidInterfaceBoundingElement.
Definition at line 483 of file elements.h.
Referenced by fill_in_jacobian_from_external_by_fd(), and reset_in_external_fd().
|
inlineprotectedvirtual |
Function called within the finite difference loop for internal data after a change in any values in the i-th internal data object.
Reimplemented in oomph::ImmersedRigidBodyElement, and oomph::FSIWallElement.
Definition at line 459 of file elements.h.
Referenced by fill_in_jacobian_from_internal_by_fd(), and reset_in_internal_fd().
|
private |
Storage for boolean flags of size Ninternal_data + Nexternal_data that correspond to the data used in the element. The flags indicate whether the particular internal or external data should be included in the general finite-difference loop in fill_in_jacobian_from_internal_by_fd() or fill_in_jacobian_from_external_by_fd(). The default is that all data WILL be included in the finite-difference loop, but in many circumstances it is possible to treat certain (external) data analytically. The use of an STL vector is optimal for memory use because the booleans are represented as single-bits.
Definition at line 122 of file elements.h.
Referenced by add_external_data(), add_internal_data(), exclude_external_data_fd(), exclude_internal_data_fd(), external_data_fd(), flush_external_data(), include_external_data_fd(), include_internal_data_fd(), and internal_data_fd().
|
private |
Pointer to array storage for local equation numbers associated with internal and external data. Again, we save storage by using a single pointer to access this information. The first index of the array is of dimension Nineternal_data + Nexternal_data and the second index varies with the number of values stored at the data object. In the most general case, however, the scheme is as memory efficient as possible.
Definition at line 101 of file elements.h.
Referenced by assign_internal_and_external_local_eqn_numbers(), external_local_eqn(), and internal_local_eqn().
|
private |
Storage for pointers to internal and external data. The data is of the same type and so can be addressed by a single pointer. The idea is that the array is of total size Ninternal_data + Nexternal_data. The internal data are stored at the beginning of the array and the external data are stored at the end of the array.
Definition at line 92 of file elements.h.
Referenced by add_external_data(), add_internal_data(), assign_internal_and_external_local_eqn_numbers(), external_data_pt(), flush_external_data(), and internal_data_pt().
|
static |
Double used for the default finite difference step in elemental jacobian calculations.
Default value used as the increment for finite difference calculations of the jacobian matrices.
Definition at line 1198 of file elements.h.
Referenced by oomph::ConstitutiveLaw::calculate_d_second_piola_kirchhoff_stress_dG(), oomph::FluxTransportEquations< DIM >::dflux_du(), oomph::DGFaceElement::dnumerical_flux_du(), fill_in_jacobian_from_external_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_field_by_fd(), oomph::ElementWithExternalElement::fill_in_jacobian_from_external_interaction_geometric_by_fd(), oomph::ElementWithMovingNodes::fill_in_jacobian_from_geometric_data(), fill_in_jacobian_from_internal_by_fd(), oomph::FiniteElement::fill_in_jacobian_from_nodal_by_fd(), oomph::RefineableElement::fill_in_jacobian_from_nodal_by_fd(), oomph::SolidFiniteElement::fill_in_jacobian_from_solid_position_by_fd(), oomph::RefineableSolidElement::fill_in_jacobian_from_solid_position_by_fd(), oomph::BuoyantQCrouzeixRaviartElement< DIM >::fill_in_off_diagonal_jacobian_blocks_by_fd(), oomph::AxisymmetricNavierStokesEquations::get_body_force_gradient_axi_nst(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::get_body_force_gradient_axi_nst(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::get_body_force_gradient_nst(), oomph::NavierStokesEquations< DIM >::get_body_force_gradient_nst(), oomph::SpaceTimeNavierStokesEquations< DIM >::get_body_force_gradient_nst(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::get_body_force_gradient_nst(), oomph::ElementWithMovingNodes::get_dnodal_coordinates_dgeom_dofs(), oomph::AxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::RefineableAxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::RefineableGeneralisedNewtonianAxisymmetricNavierStokesEquations::get_dresidual_dnodal_coordinates(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::get_dresidual_dnodal_coordinates(), oomph::RefineableGeneralisedNewtonianNavierStokesEquations< DIM >::get_dresidual_dnodal_coordinates(), oomph::FiniteElement::get_dresidual_dnodal_coordinates(), oomph::RefineableElement::get_dresidual_dnodal_coordinates(), oomph::NavierStokesEquations< DIM >::get_dresidual_dnodal_coordinates(), oomph::RefineableNavierStokesEquations< DIM >::get_dresidual_dnodal_coordinates(), oomph::SpaceTimeNavierStokesEquations< DIM >::get_dresidual_dnodal_coordinates(), oomph::RefineableSpaceTimeNavierStokesEquations< DIM >::get_dresidual_dnodal_coordinates(), oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::get_reaction_deriv_adv_diff_react(), oomph::AxisymmetricNavierStokesEquations::get_source_fct_gradient(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::get_source_fct_gradient(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::get_source_gradient_nst(), oomph::NavierStokesEquations< DIM >::get_source_gradient_nst(), oomph::SpaceTimeNavierStokesEquations< DIM >::get_source_gradient_nst(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::get_source_gradient_nst(), oomph::PoissonEquations< DIM >::get_source_gradient_poisson(), and oomph::FiniteElement::locate_zeta().
|
private |
Storage for array of pointers to degrees of freedom ordered by local equation number. This information is not needed, except in continuation, bifurcation tracking and periodic orbit calculations. It is not set up unless the control flag Problem::Store_local_dof_pts_in_elements = true.
Definition at line 84 of file elements.h.
Referenced by add_global_eqn_numbers(), assign_internal_eqn_numbers(), clear_global_eqn_numbers(), dof_pt_vector(), and dof_vector().
|
staticprotected |
Static storage for deque used to add_global_equation_numbers when pointers to the dofs in each element are not required.
Static storage used when pointers to the dofs are being assembled by add_global_eqn_numbers()
Definition at line 231 of file elements.h.
Referenced by oomph::ElementWithMovingNodes::assign_all_generic_local_eqn_numbers(), oomph::SpectralElement::assign_all_generic_local_eqn_numbers(), oomph::ElementWithExternalElement::assign_external_interaction_data_local_eqn_numbers(), oomph::RefineableElement::assign_hanging_local_eqn_numbers(), assign_internal_and_external_local_eqn_numbers(), oomph::FiniteElement::assign_nodal_local_eqn_numbers(), oomph::RefineableSolidElement::assign_solid_hanging_local_eqn_numbers(), and oomph::SolidFiniteElement::assign_solid_local_eqn_numbers().
|
staticprotected |
Empty dense matrix used as a dummy argument to combined residual and jacobian functions in the case when only the residuals are being assembled.
Definition at line 227 of file elements.h.
Referenced by oomph::AxisymmetricNavierStokesEquations::fill_in_contribution_to_djacobian_dparameter(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::fill_in_contribution_to_djacobian_dparameter(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::fill_in_contribution_to_djacobian_dparameter(), oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_djacobian_dparameter(), oomph::SpaceTimeNavierStokesEquations< DIM >::fill_in_contribution_to_djacobian_dparameter(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::fill_in_contribution_to_djacobian_dparameter(), oomph::AxisymmetricNavierStokesEquations::fill_in_contribution_to_dresiduals_dparameter(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::fill_in_contribution_to_dresiduals_dparameter(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::fill_in_contribution_to_dresiduals_dparameter(), oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_dresiduals_dparameter(), oomph::SpaceTimeNavierStokesEquations< DIM >::fill_in_contribution_to_dresiduals_dparameter(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::fill_in_contribution_to_dresiduals_dparameter(), oomph::PeriodicOrbitEquations::fill_in_contribution_to_integrated_residuals(), oomph::AdvectionDiffusionEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::GeneralisedAdvectionDiffusionEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::fill_in_contribution_to_jacobian(), oomph::AxisymAdvectionDiffusionEquations::fill_in_contribution_to_jacobian(), oomph::GeneralisedAxisymAdvectionDiffusionEquations::fill_in_contribution_to_jacobian(), oomph::AxisymmetricNavierStokesEquations::fill_in_contribution_to_jacobian(), oomph::FluxTransportEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::fill_in_contribution_to_jacobian(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::LinearisedAxisymmetricNavierStokesEquations::fill_in_contribution_to_jacobian(), oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::PolarNavierStokesTractionElement< ELEMENT >::fill_in_contribution_to_jacobian(), oomph::PolarNavierStokesEquations::fill_in_contribution_to_jacobian(), oomph::PVDEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::PVDEquationsWithPressure< DIM >::fill_in_contribution_to_jacobian(), oomph::SpaceTimeNavierStokesEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::fill_in_contribution_to_jacobian(), oomph::SphericalAdvectionDiffusionEquations::fill_in_contribution_to_jacobian(), oomph::SphericalNavierStokesEquations::fill_in_contribution_to_jacobian(), oomph::SteadyAxisymAdvectionDiffusionEquations::fill_in_contribution_to_jacobian(), oomph::PolarNavierStokesTractionElement< ELEMENT >::fill_in_contribution_to_jacobian_and_mass_matrix(), oomph::FluxTransportEquations< DIM >::fill_in_contribution_to_mass_matrix(), oomph::AdvectionDiffusionEquations< DIM >::fill_in_contribution_to_residuals(), oomph::AdvectionDiffusionFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::GeneralisedAdvectionDiffusionEquations< DIM >::fill_in_contribution_to_residuals(), oomph::AdvectionDiffusionReactionEquations< NREAGENT, DIM >::fill_in_contribution_to_residuals(), oomph::AxisymAdvectionDiffusionEquations::fill_in_contribution_to_residuals(), oomph::GeneralisedAxisymAdvectionDiffusionEquations::fill_in_contribution_to_residuals(), oomph::AxisymmetricLinearElasticityEquations::fill_in_contribution_to_residuals(), oomph::LinearisedFSIAxisymmetricNStNoSlipBCElementElement< FLUID_BULK_ELEMENT, SOLID_BULK_ELEMENT >::fill_in_contribution_to_residuals(), oomph::AxisymmetricNavierStokesEquations::fill_in_contribution_to_residuals(), oomph::LinearisedAxisymPoroelasticBJS_FSIElement< FLUID_BULK_ELEMENT, POROELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_residuals(), oomph::AxisymmetricPoroelasticityEquations::fill_in_contribution_to_residuals(), oomph::AxisymmetricPVDEquationsWithPressure::fill_in_contribution_to_residuals(), oomph::DarcyEquations< DIM >::fill_in_contribution_to_residuals(), oomph::FluidInterfaceBoundingElement::fill_in_contribution_to_residuals(), oomph::FluidInterfaceElement::fill_in_contribution_to_residuals(), oomph::FluxTransportEquations< DIM >::fill_in_contribution_to_residuals(), oomph::FourierDecomposedHelmholtzDtNBoundaryElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::FourierDecomposedHelmholtzEquations::fill_in_contribution_to_residuals(), oomph::FourierDecomposedHelmholtzFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::GeneralisedNewtonianAxisymmetricNavierStokesEquations::fill_in_contribution_to_residuals(), oomph::GeneralisedNewtonianNavierStokesEquations< DIM >::fill_in_contribution_to_residuals(), oomph::ProjectableElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::HelmholtzAbsorbingBCElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::HelmholtzDtNBoundaryElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::HelmholtzEquations< DIM >::fill_in_contribution_to_residuals(), oomph::HelmholtzFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::LinearElasticityEquations< DIM >::fill_in_contribution_to_residuals(), oomph::LinearWaveEquations< DIM >::fill_in_contribution_to_residuals(), oomph::LinearWaveFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::LinearisedAxisymmetricNavierStokesEquations::fill_in_contribution_to_residuals(), oomph::LinearisedNavierStokesEquations::fill_in_contribution_to_residuals(), oomph::FourierDecomposedHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_residuals(), oomph::HelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_residuals(), oomph::PMLHelmholtzFluxFromNormalDisplacementBCElement< HELMHOLTZ_BULK_ELEMENT, ELASTICITY_BULK_ELEMENT >::fill_in_contribution_to_residuals(), oomph::NavierStokesTractionElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::RefineableNavierStokesTractionElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::ImposeImpenetrabilityElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::ImposeParallelOutflowElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::NavierStokesEquations< DIM >::fill_in_contribution_to_residuals(), oomph::NavierStokesFluxControlElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::RefineableNavierStokesFluxControlElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::PMLFourierDecomposedHelmholtzEquations::fill_in_contribution_to_residuals(), oomph::PMLFourierDecomposedHelmholtzFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::PMLHelmholtzEquations< DIM >::fill_in_contribution_to_residuals(), oomph::PMLHelmholtzFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::PMLTimeHarmonicLinearElasticityEquations< DIM >::fill_in_contribution_to_residuals(), oomph::PoissonEquations< DIM >::fill_in_contribution_to_residuals(), oomph::PoissonFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::PolarNavierStokesTractionElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::PolarNavierStokesEquations::fill_in_contribution_to_residuals(), oomph::PoroelasticityEquations< DIM >::fill_in_contribution_to_residuals(), oomph::ImmersedRigidBodyElement::fill_in_contribution_to_residuals(), oomph::PVDEquations< DIM >::fill_in_contribution_to_residuals(), oomph::PVDEquationsWithPressure< DIM >::fill_in_contribution_to_residuals(), oomph::ImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::RefineableImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::FSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::RefineableFSIImposeDisplacementByLagrangeMultiplierElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::NavierStokesSpaceTimeTractionElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::RefineableNavierStokesSpaceTimeTractionElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::SpaceTimeNavierStokesEquations< DIM >::fill_in_contribution_to_residuals(), oomph::NavierStokesMixedOrderSpaceTimeTractionElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::RefineableNavierStokesMixedOrderSpaceTimeTractionElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::fill_in_contribution_to_residuals(), oomph::SpaceTimeUnsteadyHeatEquations< SPATIAL_DIM >::fill_in_contribution_to_residuals(), oomph::SpaceTimeUnsteadyHeatMixedOrderEquations< SPATIAL_DIM >::fill_in_contribution_to_residuals(), oomph::SphericalAdvectionDiffusionEquations::fill_in_contribution_to_residuals(), oomph::SphericalAdvectionDiffusionFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::SphericalNavierStokesEquations::fill_in_contribution_to_residuals(), oomph::SteadyAxisymAdvectionDiffusionEquations::fill_in_contribution_to_residuals(), oomph::SteadyAxisymAdvectionDiffusionFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::TimeHarmonicFourierDecomposedLinearElasticityEquations::fill_in_contribution_to_residuals(), oomph::TimeHarmonicLinearElasticityEquations< DIM >::fill_in_contribution_to_residuals(), oomph::UnsteadyHeatEquations< DIM >::fill_in_contribution_to_residuals(), oomph::UnsteadyHeatFluxElement< ELEMENT >::fill_in_contribution_to_residuals(), oomph::WomersleyEquations< DIM >::fill_in_contribution_to_residuals(), oomph::NavierStokesImpedanceTractionElement< BULK_NAVIER_STOKES_ELEMENT, WOMERSLEY_ELEMENT, DIM >::fill_in_contribution_to_residuals(), oomph::NavierStokesWomersleyPressureControlElement::fill_in_contribution_to_residuals(), oomph::NavierStokesEquations< DIM >::fill_in_pressure_advection_diffusion_residuals(), oomph::SpaceTimeNavierStokesEquations< DIM >::fill_in_pressure_advection_diffusion_residuals(), oomph::SpaceTimeNavierStokesMixedOrderEquations< DIM >::fill_in_pressure_advection_diffusion_residuals(), and oomph::SolidFiniteElement::fill_in_residuals_for_solid_ic().
|
private |
Storage for the global equation numbers represented by the degrees of freedom in the element.
Definition at line 77 of file elements.h.
Referenced by add_global_eqn_numbers(), assign_local_eqn_numbers(), clear_global_eqn_numbers(), eqn_number(), and local_eqn_number().
|
protected |
Does this element need to be kept as a halo element during a distribute?
Definition at line 131 of file elements.h.
Referenced by must_be_kept_as_halo(), set_must_be_kept_as_halo(), and unset_must_be_kept_as_halo().
|
private |
Number of degrees of freedom.
Definition at line 104 of file elements.h.
Referenced by add_global_eqn_numbers(), assign_local_eqn_numbers(), clear_global_eqn_numbers(), dof_pt_vector(), dof_vector(), eqn_number(), fill_in_contribution_to_jacobian(), fill_in_jacobian_from_external_by_fd(), fill_in_jacobian_from_internal_by_fd(), local_eqn_number(), and ndof().
|
private |
Number of external data.
Definition at line 110 of file elements.h.
Referenced by add_external_data(), add_internal_data(), assign_internal_and_external_local_eqn_numbers(), describe_local_dofs(), exclude_external_data_fd(), external_data_fd(), external_data_pt(), external_local_eqn(), fill_in_jacobian_from_external_by_fd(), flush_external_data(), include_external_data_fd(), nexternal_data(), and self_test().
|
private |
Number of internal data.
Definition at line 107 of file elements.h.
Referenced by add_external_data(), add_internal_data(), add_internal_data_values_to_vector(), add_internal_eqn_numbers_to_vector(), add_internal_value_pt_to_map(), assign_internal_and_external_local_eqn_numbers(), assign_internal_eqn_numbers(), describe_dofs(), describe_local_dofs(), exclude_external_data_fd(), exclude_internal_data_fd(), external_data_fd(), external_data_pt(), external_local_eqn(), fill_in_jacobian_from_internal_by_fd(), flush_external_data(), include_external_data_fd(), include_internal_data_fd(), internal_data_fd(), internal_data_pt(), internal_local_eqn(), ninternal_data(), read_internal_data_values_from_vector(), read_internal_eqn_numbers_from_vector(), and self_test().
|
protected |
Non-halo processor ID for Data; -1 if it's not a halo.
Definition at line 128 of file elements.h.
Referenced by oomph::FiniteElement::build_face_element(), is_halo(), non_halo_proc_ID(), set_halo(), and set_nonhalo().
|
static |
Static boolean to suppress warnings about repeated external data. Defaults to true.
Definition at line 700 of file elements.h.
Referenced by add_external_data().
|
static |
Static boolean to suppress warnings about repeated internal data. Defaults to false.
Definition at line 696 of file elements.h.
Referenced by add_internal_data().