سلام یه برنامه نوشتم که هنگام رسم محدوده (3،3-) داشت در مرحله بعد برای بررسی جوابها باید حدود رو عوض کنم و (6،-6)بذارم ولی ارور میده چرا؟میگه باید هم طول باشن!!!!!
یه سوال دیگه هم دارم که آیا درست نرمالیزه شده؟
ممنون.
زیربرنامه برنامه فعلی.
شرمنده ولی خود این باز چهار تا کد داره.
خیلی خیلی ممنون.
یه سوال دیگه هم دارم که آیا درست نرمالیزه شده؟
ممنون.
کد:
clear all; close all; clc; Er=Er_x; Q=30000;L=980/3.495; teta=input('pleas Enter teta(Degree)=');%'تتا زاويه اي است که دوقطبي الکتريکي بسته به مکانش با محور x ميسازد' alfa=input('pleas Enter alfa(Degree)=');%زاويه بين ميدان الکتريکي و دوقطبي% d=1.6*10^-16*3.6;%اندازه دوقطبي الکتريکي% d_x=d*cos(teta*pi/180);%مقدار دوقطبي الکتريکي d در راستاي محور x% d_y=d*sin(teta*pi/180);%مقدار مولفه yدو قطبي در راستاي محور y% G=(d.*Er*cos(alfa)).^2; Nor = G - min( G(:) ); DEr2 = Nor / max( Nor(:) );%حاصل ضرب ميدان الکتريکي در دوقطبي الکتريکي که %نرماليزه شده است% Er_max=max(max(Er)); S=Er_max/2; [row_position,column_position]=find(S==Er_max/2); X=-3+(row_position-1)*0.1; Y=-3+(column_position-1)*0.1; Veff=1/2*pi*(X^2+Y^2)*L; Er_max=max(max(Er)); F=(3*Q*L^3/(4*pi^2*Veff)).*(abs(Er).^2/abs(Er_max)^2).*DEr2*10^-6; x=-3:0.1:3;y=-3:0.1:3; subplot(2,1,1) pcolor(Er) xlabel('X(A^ ^0)') ylabel('y(A^ ^0)') subplot(2,1,2) plot(x,F) xlabel('X(nm)') ylabel('Fp')
زیربرنامه برنامه فعلی.
کد:
clear all; clc; x=-3:0.1:3;y=-3:0.1:3; H0=G_Hermite0(x); H1=G_Hermite1(x); H2=G_Hermite2(x); H3=G_Hermite3(x); [x,y]=meshgrid(-3:0.1:3); n=input('enter n='); m=input('enter m='); if n==0 ;A=G_Hermite0(2.*x); elseif n==1; A=G_Hermite1(2.*x); elseif n==2; A=G_Hermite2(2.*x); elseif n==3; A=G_Hermite3(2.*x); end if m==0; B=G_Hermite0(2.*y); elseif m==1; B=G_Hermite1(2.*y); elseif m==2; B=G_Hermite2(2.*y); elseif m==3; B=G_Hermite3(2.*y); end HH=A.*B.*exp(-2*x.^2-2*y.^2); subplot(2,1,1) surf(x,y,HH) subplot(2,1,2) pcolor(x,y,HH)
شرمنده ولی خود این باز چهار تا کد داره.
کد:
function H0=G_Hermite0(x); H0=1; end
کد:
function H1=G_Hermite1(x); H1=2.*x; end
کد:
function H2=G_Hermite2(x); H2=4.*x.^2-2; end
کد:
function H3=G_Hermite3(x); H3=8.*x.^3-12.*x; end
خیلی خیلی ممنون.