-
Notifications
You must be signed in to change notification settings - Fork 0
/
inner.h
33 lines (23 loc) · 1.84 KB
/
inner.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/* ============================================================================
File : inner.h
Author : Sylvie Putot, Ecole Polytechnique (France)
Part of the RINO package for Inner and Outer Reachability Analysis.
This file defines operations specific to Kaucher arithmetic for computing inner ranges
============================================================================ */
#ifndef INNER_H
#define INNER_H
#include "filib_interval.h"
#include "fadbad_aa.h"
#include "matrix.h"
// Kaucher multiplication Jacobian * (z-z0) where we consider the improper dual(eps=(z-z0))
interval Kaucher_multeps(interval Jac, interval eps);
// Kaucher addition where we consider pro as proper and impro as improper and we want an improper result
interval Kaucher_add_pro_impro(interval pro, interval impro);
// Kaucher addition where we consider pro as proper and impro as improper and we want an proper result
interval Kaucher_add_pro_impro_resultpro(interval pro, interval impro);
void compute_print_jointinnerranges(interval &range_i, interval &range_k, vector<vector<interval>> &Jaux, vector<interval> &eps, int i, int k, const bool skewed, vector<vector<double>> &A);
// computer inner and outer-approx by mean-value theorem
// using special addition corresponding to addition of proper and improper intervals: the result is an inner range for the solution of ODE system
void InnerOuter(vector<interval> &Xinner, vector<interval> &Xinner_robust, vector<interval> &Xouter, vector<interval> &Xouter_robust, vector<AAF> &x0p1, vector<vector<AAF>> &Jtau, vector<interval> &eps, vector<AAF> &xp1, double tnp1);
void InnerOuter_discretize(vector<interval> &Xinner, vector<interval> &Xinner_robust, vector<interval> &Xouter, vector<interval> &Xouter_robust, vector<AAF> &x0p1, vector<vector<AAF>> &Jtau, vector<interval> &eps, double tnp1);
#endif