Numerical Integration on Matlab

1 view (last 30 days)
Emrah Can Ucar
Emrah Can Ucar on 7 Apr 2022
Edited: Torsten on 8 Apr 2022
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
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);

Answers (2)

Riccardo Scorretti
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.

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 ...
I2' = lambda*(I1'/(2*zeta) ...
Some authors write
and mean




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!