File integral_collocation.hpp

template<typename Point, typename NT, typename Polytope, typename func>
struct IntegralCollocationODESolver

Public Types

typedef std::vector<Point> pts
typedef std::vector<pts> ptsv
typedef Polytope::MT MT
typedef Polytope::VT VT
typedef std::vector<MT> MTs
typedef std::vector<Polytope*> bounds
typedef std::vector<NT> coeffs
typedef boost::numeric::ublas::vector<NT> boost_vector
typedef boost::math::chebyshev_transform<NT> chebyshev_transform_boost

Public Functions

inline IntegralCollocationODESolver(NT initial_time, NT step, pts initial_state, func oracle, bounds boundaries, unsigned int order_ = 4)
inline unsigned int order() const
inline void initialize_matrices()
inline void initialize_fixed_point()
inline void step()
inline void print_state()
inline void steps(int num_steps)
inline Point get_state(int index)
inline void set_state(int index, Point p)

Public Members

unsigned int dim
NT eta
NT t
NT t_prev
NT dt
NT temp_node
NT a
NT b
const NT tol = 1e-6
func F
bounds Ks
pts xs
pts xs_prev
pts X_temp
Point y
coeffs cs
VT Ar
VT Av
VT X_op
VT nodes
MT A_phi
MT X0
MT X
MT X_prev
MT F_op
unsigned int _order
LagrangePolynomial<NT, VT> lagrange_poly
int prev_facet = -1
Point prev_point