26 #ifndef OOMPH_PERIODIC_ORBIT_HANDLER_CLASS_HEADER
27 #define OOMPH_PERIODIC_ORBIT_HANDLER_CLASS_HEADER
31 #include <oomph-lib-config.h>
41 #include "../meshes/one_d_mesh.template.h"
42 #include "../meshes/one_d_mesh.template.cc"
46 class PeriodicOrbitEquations;
48 class PeriodicOrbitAssemblyHandlerBase;
65 Type =
"PeriodicOrbitTimeDiscretisation";
87 "Cannot perform impulsive start for PeriodicOrbitTimeDiscretisation",
97 "Cannot perform impulsive start for PeriodicOrbitTimeDiscretisation",
117 unsigned n_value = data_pt->
nvalue();
120 for (
unsigned t = 0;
t < n_time_value;
t++)
126 for (
unsigned j = 0;
j < n_value;
j++)
137 "Cannot shift time values for PeriodicOrbitTimeDiscretisation",
146 "Cannot shift time positions for PeriodicOrbitTimeDiscretisation",
265 assembly_handler_pt, elem_pt, residuals, jacobian, 1);
270 std::ostream& outfile,
271 const unsigned& n_plot);
281 const unsigned& flag);
291 unsigned n_time_dof = cast_time_stepper_pt->
ntstorage();
292 for (
unsigned i = 0;
i < n_time_dof;
i++)
294 cast_time_stepper_pt->
Weight(0,
i) = 0.0;
295 cast_time_stepper_pt->
Weight(1,
i) = 0.0;
299 const double inverse_timescale = this->
omega();
301 const unsigned n_node = this->
nnode();
306 for (
unsigned l = 0; l < n_node; l++)
309 cast_time_stepper_pt->
Weight(0, global_eqn) = psi(l);
310 cast_time_stepper_pt->
Weight(1, global_eqn) =
311 dpsidt(l, 0) * inverse_timescale;
321 DShape& dtestdt)
const = 0;
331 DShape& dtestdt)
const = 0;
347 template<
unsigned NNODE_1D>
401 const unsigned n_node = this->
nnode();
405 for (
unsigned n = 0;
n < n_node;
n++)
428 const unsigned n_node = this->
nnode();
441 for (
unsigned t = 0;
t < n_tstorage;
t++)
447 for (
unsigned n = 0;
n < n_node;
n++)
449 const double dpsidx_ = dpsidx(
n, 0);
450 for (
unsigned t = 0;
t < n_tstorage;
t++)
483 void output(std::ostream& outfile,
const unsigned& n_plot)
499 void output(FILE* file_pt,
const unsigned& n_plot)
535 template<
unsigned NNODE_1D>
536 double SpectralPeriodicOrbitElement<
544 const double J = this->dshape_eulerian(
s, psi, dpsidt);
561 template<
unsigned NNODE_1D>
563 NNODE_1D>::dshape_and_dtest_eulerian_at_knot_orbit(
const unsigned& ipt,
570 const double J = this->dshape_eulerian_at_knot(ipt, psi, dpsidt);
581 template<
unsigned NNODE_1D>
588 template<
class ELEMENT>
592 template<
unsigned NNODE_1D>
598 :
OneDMesh<ELEMENT>(n_element, 1.0),
610 std::ostream& outfile,
611 const unsigned& n_plot)
614 const unsigned n_element = this->
nelement();
615 for (
unsigned e = 0;
e < n_element;
e++)
631 const unsigned n_element = this->
nelement();
632 for (
unsigned e = 0;
e < n_element;
e++)
635 ->fill_in_contribution_to_integrated_residuals(
636 assembly_handler_pt, elem_pt, residuals);
653 const unsigned n_element = this->
nelement();
654 for (
unsigned e = 0;
e < n_element;
e++)
657 ->fill_in_contribution_to_integrated_jacobian(
658 assembly_handler_pt, elem_pt, residuals, jacobian);
689 template<
unsigned NNODE_1D>
725 const unsigned& n_element_in_period,
740 n_element_in_period);
766 for (
unsigned e = 0;
e < n_element_in_period;
e++)
793 "PeriodicOrbitHandler can't cope with submeshes yet",
800 for (
unsigned n = 0;
n < n_node;
n++)
805 unsigned n_value = nod_pt->
nvalue();
806 for (
unsigned i = 0;
i < n_value;
i++)
810 const unsigned n_tstorage = nod_pt->
ntstorage();
812 for (
unsigned t = 1;
t < n_tstorage;
t++)
821 for (
unsigned e = 0;
e < n_element;
e++)
823 unsigned n_internal =
825 for (
unsigned i = 0;
i < n_internal;
i++)
828 Data*
const data_pt =
834 unsigned n_value = data_pt->
nvalue();
835 for (
unsigned j = 0;
j < n_value;
j++)
839 const unsigned n_tstorage = data_pt->
ntstorage();
841 for (
unsigned t = 1;
t < n_tstorage;
t++)
853 <<
" equation numbers\n";
862 unsigned offset =
Ndof *
i;
863 for (
unsigned n = 0;
n <
Ndof;
n++)
880 unsigned offset =
Ndof *
i;
881 for (
unsigned n = 0;
n <
Ndof;
n++)
883 problem_pt->
dof(offset +
n) =
919 const unsigned& ieqn_local)
922 unsigned raw_ndof = elem_pt->
ndof();
932 unsigned t = ieqn_local / raw_ndof;
934 unsigned raw_ieqn = ieqn_local % raw_ndof;
944 Time_mesh_pt->assemble_residuals(
this, elem_pt, residuals);
953 const unsigned n_elem_dof = this->
ndof(elem_pt);
954 dofs.resize(n_elem_dof);
957 for (
unsigned i = 0;
i < n_elem_dof;
i++)
967 const unsigned n_elem_dof = this->
ndof(elem_pt);
968 dofs.resize(n_elem_dof);
971 for (
unsigned i = 0;
i < n_elem_dof;
i++)
982 const unsigned n_elem_dof = this->
ndof(elem_pt);
985 for (
unsigned i = 0;
i < n_elem_dof;
i++)
999 this, elem_pt, residuals, jacobian);
1025 for (
unsigned e = 0;
e < n_element;
e++)
1038 for (
unsigned n = 0;
n < n_node;
n++)
1058 unsigned total_n_value = 0;
1062 for (
unsigned i = 0;
i < n_global_data;
i++)
1069 for (
unsigned n = 0;
n < n_node;
n++)
1074 if (solid_nod_pt != 0)
1082 for (
unsigned e = 0;
e < n_space_element;
e++)
1084 const unsigned n_internal_data =
1086 for (
unsigned i = 0;
i < n_internal_data;
i++)
1100 for (
unsigned t = 0;
t < n_time_node;
t++)
1102 Time_mesh_pt->node_pt(
t)->set_time_stepper(fake_space_time_stepper_pt,
1108 for (
unsigned i = 0;
i < n_global_data;
i++)
1111 const unsigned n_value = glob_data_pt->
nvalue();
1112 for (
unsigned j = 0;
j < n_value;
j++)
1119 count, 0, glob_data_pt->
value(
t,
j));
1126 for (
unsigned n = 0;
n < n_node;
n++)
1129 const unsigned n_value = nod_pt->
nvalue();
1130 for (
unsigned i = 0;
i < n_value;
i++)
1141 if (solid_nod_pt != 0)
1143 const unsigned n_solid_value =
1145 for (
unsigned i = 0;
i < n_solid_value;
i++)
1158 for (
unsigned e = 0;
e < n_space_element;
e++)
1160 const unsigned n_internal =
1162 for (
unsigned i = 0;
i < n_internal;
i++)
1164 Data*
const internal_dat_pt =
1167 const unsigned n_value = internal_dat_pt->
nvalue();
1168 for (
unsigned j = 0;
j < n_value;
j++)
1173 count, 0, internal_dat_pt->
value(
t,
j));
1204 const unsigned n_time_element =
Time_mesh_pt->nelement();
1206 Time_mesh_pt->spatial_error_estimator_pt()->get_element_errors(
1210 for (
unsigned e = 0;
e < n_time_element;
e++)
1299 "PeriodicOrbitHandler can't cope with submeshes yet",
1305 for (
unsigned n = 0;
n < n_node;
n++)
1311 for (
unsigned e = 0;
e < n_space_element;
e++)
1313 unsigned n_internal =
1315 for (
unsigned i = 0;
i < n_internal;
i++)
1318 Data*
const data_pt =
1332 <<
" equation numbers\n";
1341 unsigned offset =
Ndof *
i;
1342 for (
unsigned n = 0;
n <
Ndof;
n++)
1360 for (
unsigned i = 0;
i < n_global_data;
i++)
1363 const unsigned n_value = glob_data_pt->
nvalue();
1364 for (
unsigned j = 0;
j < n_value;
j++)
1378 for (
unsigned n = 0;
n < n_node;
n++)
1381 const unsigned n_value = nod_pt->
nvalue();
1382 for (
unsigned i = 0;
i < n_value;
i++)
1393 if (solid_nod_pt != 0)
1395 const unsigned n_solid_value =
1397 for (
unsigned i = 0;
i < n_solid_value;
i++)
1410 for (
unsigned e = 0;
e < n_space_element;
e++)
1412 const unsigned n_internal =
1414 for (
unsigned i = 0;
i < n_internal;
i++)
1416 Data*
const internal_dat_pt =
1419 const unsigned n_value = internal_dat_pt->
nvalue();
1420 for (
unsigned j = 0;
j < n_value;
j++)
1435 for (
unsigned t = 0;
t < n_time_node;
t++)
1441 delete fake_space_time_stepper_pt;
1474 const unsigned n_dof = this->
ndof();
1476 for (
unsigned i = 0;
i < n_dof;
i++)
1478 inner_product(
i,
i) = 1.0;
1483 const unsigned& Nplot,
1484 const double& time = 0.0)
int i
Definition: BiCGSTAB_step_by_step.cpp:9
const unsigned n
Definition: CG3DPackingUnitTest.cpp:11
Array< double, 1, 3 > e(1./3., 0.5, 2.)
JacobiRotation< float > J
Definition: Jacobi_makeJacobi.cpp:3
Definition: assembly_handler.h:63
void set_value(const unsigned &i, const double &value_)
Definition: nodes.h:271
unsigned nvalue() const
Return number of values stored in data object (incl pinned ones).
Definition: nodes.h:483
double value(const unsigned &i) const
Definition: nodes.h:293
unsigned ntstorage() const
Definition: nodes.cc:879
void set_time_stepper(TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data)
Definition: nodes.cc:406
bool is_pinned(const unsigned &i) const
Test whether the i-th variable is pinned (1: true; 0: false).
Definition: nodes.h:417
void initialise(const T &val)
Initialize all values in the matrix to val.
Definition: matrices.h:514
Definition: error_estimator.h:79
Definition: elements.h:1313
Node *& node_pt(const unsigned &n)
Return a pointer to the local node n.
Definition: elements.h:2175
double nodal_value(const unsigned &n, const unsigned &i) const
Definition: elements.h:2593
virtual void output(std::ostream &outfile)
Definition: elements.h:3050
int nodal_local_eqn(const unsigned &n, const unsigned &i) const
Definition: elements.h:1432
unsigned nnode() const
Return the number of nodes.
Definition: elements.h:2210
double dshape_eulerian(const Vector< double > &s, Shape &psi, DShape &dpsidx) const
Definition: elements.cc:3298
Definition: elements.h:73
unsigned ndof() const
Return the number of equations/dofs in the element.
Definition: elements.h:835
unsigned long eqn_number(const unsigned &ieqn_local) const
Definition: elements.h:704
Data *& internal_data_pt(const unsigned &i)
Return a pointer to i-th internal data object.
Definition: elements.h:622
unsigned ninternal_data() const
Return the number of internal data objects.
Definition: elements.h:823
static DenseMatrix< double > Dummy_matrix
Definition: elements.h:227
TimeStepper *& time_stepper_pt()
Definition: geom_objects.h:192
void build(const OomphCommunicator *const comm_pt, const unsigned &first_row, const unsigned &nrow_local, const unsigned &nrow=0)
Definition: linear_algebra_distribution.cc:35
static Steady< 0 > Default_TimeStepper
The Steady Timestepper.
Definition: mesh.h:75
GeneralisedElement *& element_pt(const unsigned long &e)
Return pointer to element e.
Definition: mesh.h:448
unsigned long nnode() const
Return number of nodes in the mesh.
Definition: mesh.h:596
const Vector< GeneralisedElement * > & element_pt() const
Return reference to the Vector of elements.
Definition: mesh.h:460
Node *& node_pt(const unsigned long &n)
Return pointer to global node n.
Definition: mesh.h:436
Node *& boundary_node_pt(const unsigned &b, const unsigned &n)
Return pointer to node n on boundary b.
Definition: mesh.h:493
unsigned long nelement() const
Return number of elements in the mesh.
Definition: mesh.h:590
virtual void make_periodic(Node *const &node_pt)
Definition: nodes.cc:2257
double value(const unsigned &i) const
Definition: nodes.cc:2408
Definition: one_d_mesh.template.h:52
Definition: oomph_definitions.h:222
Definition: periodic_orbit_handler.h:667
virtual void set_dofs_for_element(GeneralisedElement *const elem_pt, Vector< double > const &dofs)=0
virtual void get_dofs_for_element(GeneralisedElement *const elem_pt, Vector< double > &dofs)=0
virtual void get_previous_dofs_for_element(GeneralisedElement *const elem_pt, Vector< double > &dofs)=0
PeriodicOrbitAssemblyHandlerBase()
Definition: periodic_orbit_handler.h:670
Definition: periodic_orbit_handler.h:691
void adapt_temporal_mesh()
Adapt the time mesh.
Definition: periodic_orbit_handler.h:1045
void set_dofs_for_element(GeneralisedElement *const elem_pt, Vector< double > const &dofs)
Definition: periodic_orbit_handler.h:978
void orbit_output(std::ostream &outfile, const unsigned &n_plot)
Return the contribution to the residuals of the element elem_pt.
Definition: periodic_orbit_handler.h:1022
unsigned N_element_in_period
Storage for number of elements in the period.
Definition: periodic_orbit_handler.h:713
void discrete_times(Vector< double > &t)
Tell me the times at which you want the solution.
Definition: periodic_orbit_handler.h:1034
void get_previous_dofs_for_element(GeneralisedElement *const elem_pt, Vector< double > &dofs)
Definition: periodic_orbit_handler.h:963
void get_jacobian(GeneralisedElement *const &elem_pt, Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: periodic_orbit_handler.h:994
~PeriodicOrbitAssemblyHandler()
Destructor, destroy the time mesh.
Definition: periodic_orbit_handler.h:1450
void get_dofs_for_element(GeneralisedElement *const elem_pt, Vector< double > &dofs)
Definition: periodic_orbit_handler.h:949
unsigned Ndof
Store number of degrees of freedom in the original problem.
Definition: periodic_orbit_handler.h:710
PeriodicOrbitTemporalMesh< SpectralPeriodicOrbitElement< NNODE_1D > > * Time_mesh_pt
Storage for mesh of temporal elements.
Definition: periodic_orbit_handler.h:701
Vector< double > Previous_dofs
Storage for the previous solution.
Definition: periodic_orbit_handler.h:707
unsigned ndof(GeneralisedElement *const &elem_pt)
Return the number of degrees of freedom in the element elem_pt.
Definition: periodic_orbit_handler.h:911
void set_previous_dofs_to_current_dofs()
Update the previous dofs.
Definition: periodic_orbit_handler.h:902
Problem * Problem_pt
Pointer to the problem.
Definition: periodic_orbit_handler.h:697
unsigned long eqn_number(GeneralisedElement *const &elem_pt, const unsigned &ieqn_local)
Definition: periodic_orbit_handler.h:918
unsigned N_tstorage
Storage for the number of unknown time values.
Definition: periodic_orbit_handler.h:716
PeriodicOrbitTimeDiscretisation * Time_stepper_pt
Pointer to the timestepper.
Definition: periodic_orbit_handler.h:694
Mesh * Basic_time_mesh_pt
Storage for the mesh of temporal elements with a simple mesh pointer.
Definition: periodic_orbit_handler.h:704
double Omega
Storage for the frequency of the orbit (scaled by 2pi)
Definition: periodic_orbit_handler.h:719
void get_residuals(GeneralisedElement *const &elem_pt, Vector< double > &residuals)
Return the contribution to the residuals of the element elem_pt.
Definition: periodic_orbit_handler.h:941
Definition: periodic_orbit_handler.h:1458
virtual void get_non_external_ddofs_dt(Vector< double > &du_dt)
Definition: periodic_orbit_handler.h:1468
PeriodicOrbitBaseElement()
Definition: periodic_orbit_handler.h:1460
virtual void spacetime_output(std::ostream &outilfe, const unsigned &Nplot, const double &time=0.0)
Definition: periodic_orbit_handler.h:1482
virtual void get_non_external_dofs(Vector< double > &u)
Interface to get the current value of all (internal and shared) unknowns.
Definition: periodic_orbit_handler.h:1464
virtual void get_inner_product_matrix(DenseMatrix< double > &inner_product)
Get the inner product matrix.
Definition: periodic_orbit_handler.h:1472
Definition: periodic_orbit_handler.h:170
Time * Time_pt
Pointer to global time.
Definition: periodic_orbit_handler.h:178
double * Omega_pt
Definition: periodic_orbit_handler.h:175
void orbit_output(GeneralisedElement *const &elem_pt, std::ostream &outfile, const unsigned &n_plot)
Definition: periodic_orbit_handler.cc:30
unsigned Ntstorage
Definition: periodic_orbit_handler.h:172
void fill_in_contribution_to_integrated_jacobian(PeriodicOrbitAssemblyHandlerBase *const &assembly_handler_pt, GeneralisedElement *const &elem_pt, Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: periodic_orbit_handler.h:257
void set_timestepper_weights(const Shape &psi, const DShape &dpsidt)
Set the timestepper weights.
Definition: periodic_orbit_handler.h:284
virtual double dshape_and_dtest_eulerian_at_knot_orbit(const unsigned &ipt, Shape &psi, DShape &dpsidt, Shape &test, DShape &dtestdt) const =0
void fill_in_contribution_to_integrated_residuals(PeriodicOrbitAssemblyHandlerBase *const &assembly_handler_pt, GeneralisedElement *const &elem_pt, Vector< double > &residuals)
Add the element's contribution to its residual vector (wrapper)
Definition: periodic_orbit_handler.h:240
double *& omega_pt()
Broken assignment operator.
Definition: periodic_orbit_handler.h:196
Time *& time_pt()
Retun the pointer to the global time.
Definition: periodic_orbit_handler.h:214
virtual double dshape_and_dtest_eulerian_orbit(const Vector< double > &s, Shape &psi, DShape &dpsidt, Shape &test, DShape &dtestdt) const =0
double time() const
Return the global time, accessed via the time pointer.
Definition: periodic_orbit_handler.h:226
PeriodicOrbitEquations()
Definition: periodic_orbit_handler.h:182
void fill_in_generic_residual_contribution_orbit(PeriodicOrbitAssemblyHandlerBase *const &assembly_handler_pt, GeneralisedElement *const &elem_pt, Vector< double > &residuals, DenseMatrix< double > &jacobian, const unsigned &flag)
The routine that actually does all the work!
Definition: periodic_orbit_handler.cc:77
Time *const & time_pt() const
Return the pointer to the global time (const version)
Definition: periodic_orbit_handler.h:220
void set_ntstorage(const unsigned &n_tstorage)
Set the total number of time storage values.
Definition: periodic_orbit_handler.h:208
double omega()
Return the frequency.
Definition: periodic_orbit_handler.h:202
PeriodicOrbitEquations(const PeriodicOrbitEquations &dummy)=delete
Broken copy constructor.
A special temporal mesh class.
Definition: periodic_orbit_handler.h:590
PeriodicOrbitTemporalMesh(const unsigned &n_element)
Constructor, create a 1D mesh from 0 to 1 that is periodic.
Definition: periodic_orbit_handler.h:597
void assemble_residuals_and_jacobian(PeriodicOrbitAssemblyHandlerBase *const &assembly_handler_pt, GeneralisedElement *const &elem_pt, Vector< double > &residuals, DenseMatrix< double > &jacobian)
Definition: periodic_orbit_handler.h:643
void orbit_output(GeneralisedElement *const &elem_pt, std::ostream &outfile, const unsigned &n_plot)
Definition: periodic_orbit_handler.h:609
void assemble_residuals(PeriodicOrbitAssemblyHandlerBase *const &assembly_handler_pt, GeneralisedElement *const &elem_pt, Vector< double > &residuals)
Definition: periodic_orbit_handler.h:623
Definition: periodic_orbit_handler.h:57
double(* InitialConditionFctPt)(const double &t)
Definition: periodic_orbit_handler.h:105
void shift_time_positions(Node *const &node_pt)
Broken shifting of time positions.
Definition: periodic_orbit_handler.h:143
void set_weights()
Set the weights.
Definition: periodic_orbit_handler.h:152
unsigned order() const
Return the actual order of the scheme.
Definition: periodic_orbit_handler.h:77
void assign_initial_values_impulsive(Data *const &data_pt)
Definition: periodic_orbit_handler.h:84
void shift_time_values(Data *const &data_pt)
Broken shifting of time values.
Definition: periodic_orbit_handler.h:134
PeriodicOrbitTimeDiscretisation(const unsigned &n_tstorage)
Constructor for the case when we allow adaptive timestepping.
Definition: periodic_orbit_handler.h:62
void assign_initial_positions_impulsive(Node *const &node_pt)
Definition: periodic_orbit_handler.h:94
void assign_initial_data_values(Data *const &data_pt, Vector< InitialConditionFctPt > initial_value_fct)
Definition: periodic_orbit_handler.h:110
unsigned ndt() const
Number of timestep increments that need to be stored by the scheme.
Definition: periodic_orbit_handler.h:161
PeriodicOrbitTimeDiscretisation(const PeriodicOrbitTimeDiscretisation &)=delete
Broken copy constructor.
void operator=(const PeriodicOrbitTimeDiscretisation &)=delete
Broken assignment operator.
unsigned nprev_values() const
Number of previous values available.
Definition: periodic_orbit_handler.h:155
Definition: problem.h:151
unsigned long ndof() const
Return the number of dofs.
Definition: problem.h:1674
Time *& time_pt()
Return a pointer to the global time object.
Definition: problem.h:1504
OomphCommunicator * communicator_pt()
access function to the oomph-lib communicator
Definition: problem.h:1246
unsigned nglobal_data() const
Return the number of global data values.
Definition: problem.h:1686
double & dof(const unsigned &i)
i-th dof in the problem
Definition: problem.h:1813
Vector< double * > Dof_pt
Vector of pointers to dofs.
Definition: problem.h:554
Mesh *& mesh_pt()
Return a pointer to the global mesh.
Definition: problem.h:1280
unsigned nsub_mesh() const
Return number of submeshes.
Definition: problem.h:1323
unsigned long assign_eqn_numbers(const bool &assign_local_eqn_numbers=true)
Definition: problem.cc:1989
LinearAlgebraDistribution * Dof_distribution_pt
Definition: problem.h:460
Data *& global_data_pt(const unsigned &i)
Return a pointer to the the i-th global data object.
Definition: problem.h:1647
void shape(const Vector< double > &s, Shape &psi) const
Calculate the geometric shape functions at local coordinate s.
Definition: Qspectral_elements.h:576
Definition: Qspectral_elements.h:363
Refineable version of the OneDMesh.
Definition: one_d_mesh.template.h:123
Definition: Qspectral_elements.h:1323
Data *const & variable_position_pt() const
Pointer to variable_position data (const version)
Definition: nodes.h:1765
Definition: periodic_orbit_handler.h:353
double dshape_and_dtest_eulerian_at_knot_orbit(const unsigned &ipt, Shape &psi, DShape &dpsidt, Shape &test, DShape &dtestdt) const
Definition: periodic_orbit_handler.h:563
double dshape_and_dtest_eulerian_orbit(const Vector< double > &s, Shape &psi, DShape &dpsidt, Shape &test, DShape &dtestdt) const
Definition: periodic_orbit_handler.h:537
void get_interpolated_values(const Vector< double > &s, Vector< double > &value)
Return the dummy values.
Definition: periodic_orbit_handler.h:388
Node * vertex_node_pt(const unsigned &j) const
Pointer to the j-th vertex node in the element.
Definition: periodic_orbit_handler.h:464
void output(FILE *file_pt)
Definition: periodic_orbit_handler.h:491
unsigned nrecovery_order()
Order of recovery shape functions.
Definition: periodic_orbit_handler.h:412
unsigned nvertex_node() const
Number of vertex nodes in the element.
Definition: periodic_orbit_handler.h:458
void get_interpolated_values(const unsigned &t, const Vector< double > &s, Vector< double > &value)
Return the temporal dummy values.
Definition: periodic_orbit_handler.h:394
unsigned num_Z2_flux_terms()
Definition: periodic_orbit_handler.h:419
unsigned ncont_interpolated_values() const
Number of continuously interpolated values (1)
Definition: periodic_orbit_handler.h:382
unsigned required_nvalue(const unsigned &n) const
Broken assignment operator.
Definition: periodic_orbit_handler.h:376
void output(std::ostream &outfile, const unsigned &n_plot)
Definition: periodic_orbit_handler.h:483
void output(std::ostream &outfile)
Function to return the number of values.
Definition: periodic_orbit_handler.h:475
SpectralPeriodicOrbitElement(const SpectralPeriodicOrbitElement< NNODE_1D > &dummy)=delete
Broken copy constructor.
SpectralPeriodicOrbitElement()
Definition: periodic_orbit_handler.h:357
void output(FILE *file_pt, const unsigned &n_plot)
Definition: periodic_orbit_handler.h:499
void get_Z2_flux(const Vector< double > &s, Vector< double > &flux)
Get the fluxes for the recovert.
Definition: periodic_orbit_handler.h:425
Definition: timesteppers.h:231
DenseMatrix< double > Weight
Storage for the weights associated with the timestepper.
Definition: timesteppers.h:237
Time * Time_pt
Pointer to discrete time storage scheme.
Definition: timesteppers.h:234
unsigned ntstorage() const
Definition: timesteppers.h:601
std::string Type
Definition: timesteppers.h:241
double & time()
Return current value of continous time.
Definition: timesteppers.h:332
Definition: timesteppers.h:63
double & time()
Return the current value of the continuous time.
Definition: timesteppers.h:123
Definition: oomph-lib/src/generic/Vector.h:58
void initialise(const _Tp &__value)
Iterate over all values and set to the desired value.
Definition: oomph-lib/src/generic/Vector.h:167
Definition: error_estimator.h:266
RealScalar s
Definition: level1_cplx_impl.h:130
double Pi
Definition: two_d_biharmonic.cc:235
Vector::Scalar omega(const Vector &t, const Vector &s, RealScalar angle)
Definition: IDRS.h:36
squared absolute value
Definition: GlobalFunctions.h:87
void flux(const double &time, const Vector< double > &x, double &flux)
Get flux applied along boundary x=0.
Definition: pretend_melt.cc:59
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10
OomphInfo oomph_info
Definition: oomph_definitions.cc:319
t
Definition: plotPSD.py:36
Definition: indexed_view.cpp:20
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2