Error with ’quad‘!!!Doubleintegral?
Show older comments
L = 3.128438e+003;
B= 16685;
X = 2.085625e+003;
Y = 0;
Z = 0;
Quad_1 = @(Zeta,Xi) exp(-sqrt(Xi.^2 + Zeta.^2 + Z^2))./(-sqrt(Xi.^2 + Zeta.^2 + Z^2));
T_1 = quad(@(Zeta) Quad_1,Y-B,Y+B);
T_2 = @(Xi) exp(-Xi)*T_1;
T = quad(@(Xi) T_2(Xi), X-L, X+L);
disp(T);
Error using ==> quad at 80
The integrand function must return an output vector of the same length as the input vector
Error in ==> stationaer at 75
T_1 = quad(@(Zeta) Quad_1,Y-B,Y+B);
Can anyone help me to correct the errors? Thanks.
Jack
Answers (2)
bym
on 1 Feb 2013
how about this
L = 3.128438e+003;
B= 16685;
X = 2.085625e+003;
Y = 0;
Z = 0;
Quad_1 = @(Zeta,Xi) exp(-sqrt(Xi.^2 + Zeta.^2 + Z^2))./(-sqrt(Xi.^2 + Zeta.^2 + Z^2));
%T_1 = quad(@(Zeta) Quad_1,Y-B,Y+B);
%T_2 = @(Xi) exp(-Xi)*T_1;
%T = quad(@(Xi) T_2(Xi), X-L, X+L);
T = dblquad(Quad_1,Y-B,Y+B,X-L,X+L);
disp(T);
wang
on 1 Feb 2013
0 votes
Categories
Find more on Call Python from MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!