[Scilab-users] How to fix the round off error of "intg"

Samuel Gougeon sgougeon at free.fr
Mon Nov 18 08:40:24 CET 2019


Le 18/11/2019 à 06:44, fujimoto2005 a écrit :
> My objective is to find a variable x which set the derivative of the function
> f (x) with respect to x to zero.
> The function f (x) is the integration of g(x, z) from a to b with respect to
> z., that is,
> f (x) = ∫g(x, z) dz over  (a, b).
> The function g (x, z) is a well-behaved function that has one peak with
> respect to z.
> I used "intg" to calculate ∫g(x, z)dz.
> I used  "numuderivatibe" to calculate f '(x)
> I used   "fsoleve" to find x where f '(x) = 0.
>
> When executed it, it stopped with the following warning.
>
> "fsolve: numderivative: Error while evaluating the function: "intg: Error:
> Round-off error detected, the requested tolerance (or default) cannot be
> achieved. Try using bigger tolerances."
>
> I would like to ask two questions.
> 1. Can I investigate the cause of rounding error by adding "disp" line in
> macros "numderivative"

Yes, why not.


> or "intg"

No, since it's a hard-coded function, not a macro


> in order to monitor the variables?
> 2. Where can I modify to increase the tolerances of "intg"?


There are named "ea" and "er" in the help page: 
https://help.scilab.org/docs/6.0.2/en_US/intg.html





More information about the users mailing list