codac 2.0.0
Loading...
Searching...
No Matches
codac2_peibos.h
Go to the documentation of this file.
1
9
10#pragma once
11
14#include "codac2_OctaSym.h"
15#include "codac2_inversion.h"
18
19
20namespace codac2
21{
31 double split (const IntervalVector& X, double eps, vector<IntervalVector>& boxes);
32
42 double error(const IntervalVector& Y, const Vector& z, const IntervalMatrix& Jf, const Matrix& A, const IntervalVector& X);
43
53 Matrix inflate_flat_parallelepiped (const Matrix& A, const Vector& e_vec, double rho);
54
67 Parallelepiped parallelepiped_inclusion(const IntervalVector& Y, const IntervalMatrix& Jf, const Matrix& Jf_tild, const AnalyticFunction<VectorType>& psi_0, const OctaSym& sigma, const IntervalVector& X);
68
80 vector<Parallelepiped> PEIBOS(const AnalyticFunction<VectorType>& f, const AnalyticFunction<VectorType>& psi_0, const vector<OctaSym>& Sigma, double epsilon, bool verbose = false);
81
93 vector<Parallelepiped> PEIBOS(const AnalyticFunction<VectorType>& f, const AnalyticFunction<VectorType>& psi_0, const vector<OctaSym>& Sigma, double epsilon, const Vector& offset, bool verbose = false);
94}
Class representing a parallelepiped .
Definition codac2_Parallelepiped.h:30
Definition codac2_OctaSym.h:21
Eigen::Matrix< double,-1, 1 > Vector
Alias for a dynamically-sized column vector of doubles.
Definition codac2_Vector.h:24
Matrix inflate_flat_parallelepiped(const Matrix &A, const Vector &e_vec, double rho)
Inflate the flat parallelepiped by .
Eigen::Matrix< Interval,-1, 1 > IntervalVector
Alias for a dynamic-size column vector of intervals.
Definition codac2_IntervalVector.h:25
vector< Parallelepiped > PEIBOS(const AnalyticFunction< VectorType > &f, const AnalyticFunction< VectorType > &psi_0, const vector< OctaSym > &Sigma, double epsilon, bool verbose=false)
Compute a set of parallelepipeds enclosing for each symmetry in the set of symmetries ....
double error(const IntervalVector &Y, const Vector &z, const IntervalMatrix &Jf, const Matrix &A, const IntervalVector &X)
Compute the error term for the parallelepiped inclusion. The error is later used to inflate the flat ...
Eigen::Matrix< double,-1,-1 > Matrix
Alias for a dynamic-size matrix of doubles.
Definition codac2_Matrix.h:26
Parallelepiped parallelepiped_inclusion(const IntervalVector &Y, const IntervalMatrix &Jf, const Matrix &Jf_tild, const AnalyticFunction< VectorType > &psi_0, const OctaSym &sigma, const IntervalVector &X)
Used in PEIBOS. Compute a parallelepiped enclosing of where .
Eigen::Matrix< Interval,-1,-1 > IntervalMatrix
Alias for a dynamic-size matrix of intervals.
Definition codac2_IntervalMatrix.h:25
double split(const IntervalVector &X, double eps, vector< IntervalVector > &boxes)
Recursively split a box until the maximum diameter of each box is less than eps. Note that the result...