help: numderivative => integration - derivation
[scilab.git] / scilab / modules / differential_equations / tests / nonreg_tests / bug_4083.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2013 - Scilab Enterprises - Adeline CARNIS
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7
8 // <-- CLI SHELL MODE -->
9 // <-- ENGLISH IMPOSED -->
10 // <-- NO CHECK REF -->
11
12 // <-- Non-regression test for bug 4083 -->
13 //
14 // <-- Bugzilla URL -->
15 // http://bugzilla.scilab.org/show_bug.cgi?id=4083
16 //
17 // <-- Short Description -->
18 //    The numderivative function is created, which replaces both derivative and
19 //    numdiff functions.
20 // =============================================================================
21
22 function y = myfunction(x)
23     y = x^3;
24 endfunction
25
26 // Old 'numdiff' function equivalent
27 x = 1;
28 dx = sqrt(%eps)*(1+1d-3*abs(x));
29 g = numderivative(myfunction, x, dx);
30 expectedJ = 3;
31 assert_checkalmostequal(g, expectedJ, [], 1.d-8);
32
33 // Old 'numderivative' function equivalent
34 [J, H] = numderivative(myfunction, x);
35 expectedH = 6;
36 assert_checkalmostequal(J, expectedJ, [], 1.d-6);
37 assert_checkequal(H, expectedH);
38 [J, H] = numderivative(myfunction, x, %eps^(1/4));
39 expectedH = 6;
40 assert_checkalmostequal(J, expectedJ, [], 1.d-8);
41 assert_checkequal(H, expectedH);
42
43 // numderivative test
44 [J,H] = numderivative(myfunction, x);
45 assert_checkalmostequal(J, expectedJ, [], 1.d-8);
46 assert_checkequal(H, expectedH);