Maison  >  Article  >  tutoriels informatiques  >  Matlab intégrale indéfinie

Matlab intégrale indéfinie

王林
王林avant
2024-01-22 17:42:06956parcourir

Matlab intégrale indéfinie

intégrale indéfinie matlab

Remplacement infinitésimal équivalent

∵ln(1+x)~x

∴ln[e^sinx+³√(1-cosx)]=ln[1+e^sinx+³√(1-cosx)-1]~e^sinx+³√(1-cosx)-1

∵arctanx~x

∴arctan[2³√(1-cosx)]~2³√(1-cosx)

∴Formule originale=(1/2)lim(x→0) [e^sinx+³√(1-cosx)-1]/³√(1-cosx)

=(1/2){lim(x→0) [e^sinx-1]/³√(1-cosx)+ lim(x→0)³√(1-cosx)/³√(1-cosx )}

=1/2+(1/2)lim(x→0) [e^sinx-1]/³√(1-cosx)

Remplacer par la valeur infinitésimale équivalente

∵e^x-1~x

∴e^sinx-1~sinx~x

1-cosx~x²/2

∴Formule originale=1/2+(1/2)lim(x→0) [e^sinx-1]/³√(1-cosx)

=1/2+(1/2)lim(x→0) x/³√(x²/2)

=1/2+(1/2)lim(x→0) ³√(2x)

=1/2

Essayez l'intégration numérique suivante dans Matlab où R r est une constante

Il y a deux problèmes principaux avec l’approche de l’auteur :

1. La fonction quad est utilisée pour calculer des intégrales numériques, et l'expression de la fonction ne peut pas contenir de quantités symboliques ;

2. L'expression de la fonction intégrande doit être écrite sous une forme vectorisée autour de la variable intégrande (c'est-à-dire que l'arithmétique ponctuelle doit être utilisée).

Code de référence :

R=1;

syms L;

rr = 0 : 0.1 : 1;

pour ii = 1 : longueur(rr)

r = rr(ii);

f = @(l)(acos((1+l*l-r*r)/(2*l))+r*r*acos((r*r+l*l-1)/(2*r* l))-0,5*sqrt(4*r*r-(1+r*r-l*l)^2))*2*l/(pi*r^4);

fun = @(L) arrayfun(f,L);

J(ii) = quadl(fun,0,r);

fin

intrigue(rr, J)

Ou vous pouvez aussi emprunter une partie du code à Fengxiao 1 à l'étage et écrire :

R=1;

syms L;

rr = 0 : 0.1 : 1;

pour ii = 1 : longueur(rr)

r = rr(ii);

SOA=R^2*acos((R^2+L^2-r^2)/(2*R*L))+r^2*acos((r^2+L^2-R^2 )/(2*r*L))-...

0,5*sqrt(4*R^2*r^2-(R^2+r^2-L^2)^2);

PAB=SOA/(pi*r^2);

p=2*L/r^2;

f=PAB*p;

fun = eval(['@(L)' vectorize(f)]);

fun = @(l) arrayfun (@(L)eval(f),l);

J(ii) = quadl(fun,0,r);

fin

intrigue(rr, J)

Bien que le code ci-dessus puisse être exécuté, il y a un problème avec l'intégrande - la valeur du cosinus inverse du premier terme de SOA peut être un nombre complexe (car lorsque r est légèrement plus petit, le paramètre de acos est supérieur à 1 ), veuillez vérifier attentivement une fois.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer