Numerical Integration on Matlab
1 view (last 30 days)
Show older comments
There are 4 integrals I need to write, but I can't get correct results from them. Did I write it right?
Equations that end in c are constants. they don't change
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/956630/image.jpeg)
xi_0 = r(1)/Rprop;
xi_1 = 1;
I1_c = 4*G*(1-epsilon*tan(phi));
I1 = integral(@(xint) xint*I1_c, xi_0, xi_1);
I2_c = lambda*(1+epsilon/tan(phi))*sin(phi)*cos(phi);
I2 = integral(@(xint) ((xint*I1_c)/2.*xint),xi_0,xi_1);
J1_c = 4*G*(1+epsilon/tan(phi));
J1 = integral(@(xint) xint*J1_c ,xi_0, xi_1);
J2_c = (1-epsilon*tan(phi))*((1+cos(2*phi))/(2));
J2 = integral(@(xint) (xint*J1_c)/2 ,xi_0,xi_1);
0 Comments
Answers (2)
Riccardo Scorretti
on 8 Apr 2022
Hi. I would say no: you forget to multiply I2 and J2 by the respective constants I2_c and J2_c. That being said, these functions are polynomials with respect to xi: at your place I would go analytically.
0 Comments
Torsten
on 8 Apr 2022
Edited: Torsten
on 8 Apr 2022
I2 = integral(@(xint) ((xint*I1_c*I2_c)/2.*xint),xi_0,xi_1);
J2_c = (1-epsilon*tan(phi))*(cos(phi))^2;
J2 = integral(@(xint) (xint*J1_c)/2*J2_c ,xi_0,xi_1);
Not sure whether
I2' = lambda*(I1'/2 * zeta ...
or
I2' = lambda*(I1'/(2*zeta) ...
Some authors write
1/2*zeta
and mean
1/(2*zeta)
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!