با سلام و عرض ادب و احترام
می خواهم درون یک حلقه for از انتگرال گیری عددی با دستور dblquad استفاده کنم،مشکل اینست که دستور dblquad متغیر حلقه for را درون خود قبول نمی کند،
یعنی کلا دستور quad ثابت درون خود قبول نمی کند.منظورم ثابتیه که از قبل بهش مقدار دادیم،مثلا بگوییم a=2، بعد درون تابع تحت انتگرال از a استفاده کنیم، error میدهد.
نمیدونم تونستم منظورمو برسونم!
ممنون میشم اگر کمکم کنید،واقعا به جواب این سوال نیاز دارم
برای روشنتر شدن سوال ، برنامه را هم ارسال می کنم
می خواهم درون یک حلقه for از انتگرال گیری عددی با دستور dblquad استفاده کنم،مشکل اینست که دستور dblquad متغیر حلقه for را درون خود قبول نمی کند،
یعنی کلا دستور quad ثابت درون خود قبول نمی کند.منظورم ثابتیه که از قبل بهش مقدار دادیم،مثلا بگوییم a=2، بعد درون تابع تحت انتگرال از a استفاده کنیم، error میدهد.
نمیدونم تونستم منظورمو برسونم!
ممنون میشم اگر کمکم کنید،واقعا به جواب این سوال نیاز دارم
برای روشنتر شدن سوال ، برنامه را هم ارسال می کنم
کد پیاچپی:
%SERRIS 21 ANTENNA H.W : Parabolic prime focus Reflector Antenna
%1st part E-plane
f=input(‘plz enter frequncy (Hz):’);
l=3e8/f;
k=2*pi/l;
for theta=0:.01:pi
I2=dblquad(‘(((sin(x).^2).*cos(y)+cos(x).^2)./sqrt(1-(sin(y).^2).*(sin(x).^2))).*(sin(y)./(1+cos(y))).*(exp(1i*2*sin(theta).*sin(x).*sin(y)./(1+cos(y))))’,0,1.3895,0,2*pi);
E=(1-cos(theta)).*cos(theta).*I2;
plot(theta*180/pi,E)
hold on
end