[Scilab-users] "intg" and i"ntegrate"

classic Classic list List threaded Threaded
3 messages Options
fujimoto2005 fujimoto2005
Reply | Threaded
Open this post in threaded view
|

[Scilab-users] "intg" and i"ntegrate"

I want to integrate a user function f(x,y1,y2) from a to b with respect to x.

1, I don't see the difference between "integrate" and "intg". I saw help
file and find "integrate" can manage multi upper limits.  Except it, I can't
find any differences between two functions. Is there a difference in the
accuracy or calculation method?
 "intg" has a fixed number of partitions. Does "integrate" increase the
number of partitions automatically until the accuracy is not improved? I do
not understand the difference with the help file.
2, I could use "intg" with "intg (a, b, list (f, y1, y2))", but I could't
use "integrate" with "integrate (list ("f", y1, y2), "x", a, b)" or
"integrate (list (f, y1, y2), "x", a, b)". What is wrong with the syntax?

Best regards



--
Sent from: http://mailinglists.scilab.org/Scilab-users-Mailing-Lists-Archives-f2602246.html
_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|

Re: "intg" and i"ntegrate"

Hello Fujimoto2005,

Le 22/02/2018 à 14:19, fujimoto2005 a écrit :
> I want to integrate a user function f(x,y1,y2) from a to b with respect to x.
>
> 1, I don't see the difference between "integrate" and "intg". I saw help
> file and find "integrate" can manage multi upper limits.  Except it, I can't
> find any differences between two functions. Is there a difference in the
> accuracy or calculation method?

No, since integrate() actually calls intg() to proceed. integrate() is a
wrapper for intg().

>   "intg" has a fixed number of partitions.

Its algorithm is adaptative. The partition is dynamically refined when
some local variations of the function are detected and fast.

> Does "integrate" increase the
> number of partitions automatically until the accuracy is not improved?

Yes, since intg() does it and is called by integrate().

> I do not understand the difference with the help file.
> 2, I could use "intg" with "intg (a, b, list (f, y1, y2))", but I could't
> use "integrate" with "integrate (list ("f", y1, y2), "x", a, b)" or
> "integrate (list (f, y1, y2), "x", a, b)". What is wrong with the syntax?

You are right. This

integrate (list (f, y1, y2), "x", a, b)

syntax could be added. But it is possible to use "local" parameters,
like this:

a = 3;
x1 = 0:0.1:2*%pi;
X = integrate('sin(a*x)', 'x', 0, x1);
// Checking
norm((1-cos(a*x1))/a -X)

--> norm((1-cos(a*x1))/a -X)
  ans  =
    2.491D-15

The only thing is that the name of "local" parameters must not collide
an internal parameter of integrate:
--> edit integrate

The list() feature specific to intg() could be included into
integrate().  Then intg() could be undocumented as an internal function
of integrate(). If you agree and wish such a merge, would you mind
filling in a wish report on Bugzilla?

Best regards
Samuel

_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users
fujimoto2005 fujimoto2005
Reply | Threaded
Open this post in threaded view
|

Re: "intg" and i"ntegrate"

Dear Samuel.
Thank for your advice.
I will fill in a wish report on Bugzilla.

Best regards.




--
Sent from: http://mailinglists.scilab.org/Scilab-users-Mailing-Lists-Archives-f2602246.html
_______________________________________________
users mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users