How can I integrate this function?
8 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Sam Oke
il 16 Nov 2018
Commentato: Cris LaPierre
il 28 Nov 2018
Please, I have been trying to simulate the following functions using MATLAB. But I am still unable to get it correctly. The functions are given below;
where;

This is the code I have written following the approach discussed by Star Strider for a similar problem. Any idea on how to make the code works?
x = 2000000; T = 1; a = 4;L = 0.000159; B = 50;
syms r w
firstint = @(w) integral(@(r) (acos (((r.^2) + (w.^2) - (B.^2))/(2 * w * r))* ((2*L * r)/(1+((r.^a)/(x*T))))), w-B, w+B, 'ArrayValued',1);
secondint = @(w) (1-(firstint(w))).*w;
answer = integral(secondint, B, Inf);
D = exp (-2 * pi * L * answer);
final = A * D;
0 Commenti
Risposta accettata
Cris LaPierre
il 17 Nov 2018
The approach you are taking is numeric, so don't declare symbolic variables.
x = 2000000; T = 1; a = 4;L = 0.000159; B = 50;
firstint = @(w) integral(@(r) (acos (((r.^2) + (w.^2) - (B.^2))/(2 .* w .* r))* ((2*L .* r)/(1+((r.^a)/(x.*T))))), w-B, w+B, 'ArrayValued',1);
secondint = @(w) (1-(firstint(w))*w);
answer = integral(secondint, B, Inf, 'ArrayValued',1)
This does give a warning:
Warning: Minimum step size reached near x = 3.24519e+30. There may be a singularity, or the tolerances may be too tight for this problem.
2 Commenti
Cris LaPierre
il 28 Nov 2018
You would need to use a symbolic approach, including functions designed to work with symbolic equations (int).
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!