Help with Numerical integration (convert symbolic expression to double)
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
AAQIB PEERZADA
am 3 Jun. 2020
Kommentiert: AAQIB PEERZADA
am 3 Jun. 2020
Hello MATLAB community
I am trying to solve the folowing integral

Here is my code
However MATLAB throws an error
Error using integralCalc/finalInputChecks (line 511)
Input function must return 'double' or 'single' values. Found
'sym'.
N=10;
S=[20 25 18 29 17 28 23 20 21 30];
normA = S - min(S(:));
normA = normA ./ max(normA(:));
A=normA;
A(5)=0.1;
syms k x
p=subs(k.^(x-1),k,[A(1:N)]);
L=(prod(p));
fun3=@(x)x.^(N-1).*[L];
q2=(integral(fun3,0,inf));
3 Kommentare
Akzeptierte Antwort
madhan ravi
am 3 Jun. 2020
N=10;
S=[20 25 18 29 17 28 23 20 21 30];
normA = S - min(S(:));
normA = normA ./ max(normA(:));
A=normA;
A(5)=0.1;
syms k x
p=subs(k.^(x-1),k,A(1:N));
L=prod(p);
fun3=matlabFunction(x.^(N-1).*L);
q2=integral(fun3,0,inf,'arrayvalued',1)
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Calculus finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!