Xcos Solvers : Scilab Documentation
[scilab.git] / scilab / modules / xcos / examples / solvers / integRK.sce
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) 2009 - Paul Bignier
3 //
4 // This file must be used under the terms of the CeCILL.
5 // This source file is licensed as described in the file COPYING, which
6 // you should have received as part of this distribution.  The terms
7 // are also available at
8 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
9
10 // Run with exec("SCI/modules/xcos/help/en_US/solvers/integRK.sce");
11
12 // Import the diagram and augment the ending time
13 importXcosDiagram("SCI/modules/xcos/examples/solvers/ODE_Example.xcos");
14 scs_m.props.tf = 3500;
15
16 // BDF / Newton
17 // Select the solver
18 scs_m.props.tol(6) = 0;
19 // Start the timer, launch the simulation and display time
20 timer();
21 xcos_simulate(scs_m, 4);
22 t = timer();
23 disp(t, "Time for BDF / Newton :");
24
25 // BDF / Functional
26 // Select the solver
27 scs_m.props.tol(6) = 1;
28 // Start the timer, launch the simulation and display time
29 timer();
30 xcos_simulate(scs_m, 4);
31 t = timer();
32 disp(t, "Time for BDF / Functional :");
33
34 // Adams / Functional
35 // Select the solver
36 scs_m.props.tol(6) = 3;
37 // Start the timer, launch the simulation and display time
38 timer();
39 xcos_simulate(scs_m, 4);
40 t = timer();
41 disp(t, "Time for Adams / Functional :");
42
43 // Adams / Newton
44 // Select the solver
45 scs_m.props.tol(6) = 2;
46 // Start the timer, launch the simulation and display time
47 timer();
48 xcos_simulate(scs_m, 4);
49 t = timer();
50 disp(t, "Time for Adams / Newton :");
51
52 // Runge-Kutta
53 // Select the solver and set abstol to 10^-2
54 scs_m.props.tol(6) = 4;
55 scs_m.props.tol(1) = 0.01;
56 // Start the timer, launch the simulation and display time
57 timer();
58 xcos_simulate(scs_m, 4);
59 t = timer();
60 disp(t, "Time for Runge-Kutta :");