Skip to content

Commit

Permalink
Modify examples to use ariadne_main, resolve #595
Browse files Browse the repository at this point in the history
  • Loading branch information
lgeretti committed May 20, 2021
1 parent 9ce49b9 commit 777151e
Show file tree
Hide file tree
Showing 20 changed files with 84 additions and 228 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ Legenda for the issue kind:
- [#573](https://github.com/ariadne-cps/ariadne/issues/573) (C) Use an LRU cache for modes in CompositeHybridAutomaton, avoid exhausting a given mode in HybridEvolver before changing mode
- [#580](https://github.com/ariadne-cps/ariadne/issues/580) (C) VectorFieldEvolver, IteratedMapEvolver and HybridEvolver now check that the initial enclosure is consistent
- [#592](https://github.com/ariadne-cps/ariadne/issues/592) (C) Enclosure now uses the global GraphicsManager drawer instead of having a dedicated configuration field
- [#595](https://github.com/ariadne-cps/ariadne/issues/595) (C) Modify examples to use ariadne_main function for simplicity, tutorials are not changed
- [#539](https://github.com/ariadne-cps/ariadne/issues/539) (F) A segmentation fault sometimes would be issued when terminating the executable, due to logging
- [#557](https://github.com/ariadne-cps/ariadne/issues/557) (F) Fix behavior of StopWatch utility for concurrent code, enhance the class for choosing a duration type
- [#567](https://github.com/ariadne-cps/ariadne/issues/567) (F) Fix problem with state_time space creation when state space already contains the 't' variable
Expand Down
10 changes: 3 additions & 7 deletions examples/continuous/attractor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,10 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne.hpp"

using namespace std;
using namespace Ariadne;

int main(int argc, const char* argv[]) {
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
#include "ariadne_main.hpp"

void ariadne_main()
{
RealVariable x("x"), y("y");
VectorField system = {{dot(x)=2*x-x*y,dot(y)=2*x*x-y}};
RealExpressionBoundedConstraintSet initial_set = {{0.9_dec<=x<=1,-2.2_dec<=y<=-2},{sqr(x)+sqr(y+2)<=1}};
Expand Down
7 changes: 2 additions & 5 deletions examples/continuous/noisy/chemical-reactor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "chemical-reactor.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(CR());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/dc-dc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "dc-dc.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(DC());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/higgins-selkov.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "higgins-selkov.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(HS());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/jerk16.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "jerk16.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(J16());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/jerk21.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "jerk21.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(J21());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/jet-engine.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "jet-engine.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(JE());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/lorenz-attractor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "lorenz-attractor.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(LA());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/lotka-volterra.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "lotka-volterra.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(LV());
}
10 changes: 3 additions & 7 deletions examples/continuous/noisy/noisy-benchmark.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"

#include "higgins-selkov.hpp"
#include "chemical-reactor.hpp"
#include "lotka-volterra.hpp"
Expand All @@ -32,16 +34,10 @@
#include "rossler-attractor.hpp"
#include "jerk16.hpp"
#include "dc-dc.hpp"

#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));

List<SystemType> systems = {HS(),CR(),LV(),JE(),PI(),J21(),LA(),RA(),J16(),DC()};

for (SystemType s : systems) {
Expand Down
7 changes: 2 additions & 5 deletions examples/continuous/noisy/pi-controller.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "pi-controller.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(PI());
}
7 changes: 2 additions & 5 deletions examples/continuous/noisy/rossler-attractor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,11 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include "ariadne_main.hpp"
#include "rossler-attractor.hpp"
#include "noisy-utilities.hpp"

using namespace Ariadne;


int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));
run_noisy_system(RA());
}
46 changes: 4 additions & 42 deletions examples/discrete/henon_map.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,59 +22,21 @@
* along with Ariadne. If not, see <https://www.gnu.org/licenses/>.
*/

#include <fstream>
#include <iostream>
#include "ariadne_main.hpp"

#include "config.hpp"
#include "utility/attribute.hpp"
#include "algebra/vector.hpp"
#include "algebra/matrix.hpp"
#include "algebra/algebra.hpp"
#include "symbolic/space.hpp"
#include "symbolic/expression.hpp"
#include "function/taylor_model.hpp"
#include "algebra/differential.hpp"
#include "function/constraint.hpp"
#include "function/function.hpp"
#include "function/taylor_function.hpp"
#include "function/formula.hpp"
#include "solvers/solver.hpp"
#include "symbolic/expression_set.hpp"
#include "dynamics/enclosure.hpp"
#include "geometry/box.hpp"
#include "geometry/list_set.hpp"
#include "dynamics/iterated_map.hpp"
#include "dynamics/iterated_map_evolver.hpp"
#include "io/figure.hpp"
#include "io/logging.hpp"

#include "geometry/grid_paving.hpp"
#include "dynamics/reachability_analyser.hpp"

#include "geometry/function_set.hpp"
#include "geometry/affine_set.hpp"

using namespace Ariadne;
using namespace std;

#define ARIADNE_PRINT(expr) { std::cout << #expr << ": " << (expr) << "\n"; }


Int main(int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));

// The Henon map \f$(x,y)\mapsto(a-x^2+by,x)
Real a=Decimal(1.3), b=Decimal(0.3);
RealVariable x("x"), y("y");
IteratedMap henon({next(x)=a-x*x+b*y,next(y)=x});
ARIADNE_PRINT(henon);
ARIADNE_LOG_PRINTLN_VAR(henon);

// Compute a fixed point
IntervalNewtonSolver solver(maximum_error=1e-2, maximum_number_of_steps=16);
ExactBoxType search_box({{0,1},{0,1}});
Point<FloatDPBounds> fixed_point = Point(solver.fixed_point(henon.update_function(),search_box));
ARIADNE_PRINT(fixed_point);
ARIADNE_LOG_PRINTLN_VAR(fixed_point);
LabelledSet<Point<FloatDPBounds>> labelled_fixed_point(henon.state_space(),fixed_point);

// Set up the evaluators
Expand Down
10 changes: 2 additions & 8 deletions examples/hybrid/bouncingball.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,10 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/

#include <cstdarg>
#include "ariadne.hpp"
#include "ariadne_main.hpp"

using namespace Ariadne;
using std::cout; using std::endl; using std::flush;

Int main(Int argc, const char* argv[])
void ariadne_main()
{
ARIADNE_LOG_SET_VERBOSITY(get_verbosity(argc,argv));

typedef GeneralHybridEvolver GeneralHybridEvolverType;

/// Set the system parameters
Expand Down

0 comments on commit 777151e

Please sign in to comment.