why I got zero answer?

1 回表示 (過去 30 日間)
Habib
Habib 2015 年 2 月 18 日
コメント済み: Habib 2015 年 2 月 19 日
Hi everyone.
In below codes I used the trapz command for integration of u1_1, but answer is zero, what is wrong? And if I want to integrate respect to "r", what must I do?
clc
clear all
close all
a=3e-2;
z=0.42;
N=300;
lambda=1030e-9;
k=2*pi/lambda;
w0=0.0001;
zr=pi*w0^2/lambda;
R=z*(1+(zr/z)^2);
w=w0*sqrt(1+(z/zr)^2);
[x,y]=meshgrid(linspace(-a/2,a/2,N));
[teta,r] = cart2pol(x,y);
for i=1:N
for j=1:N
u1_1(i,j)=(r(i,j)./w).^2.*exp(-(r(i,j).^2)./w.^2);
end
end
for i=1:N
for j=1:N
u2(i,j)=trapz(u1_1(i,j));
end
end

回答 (3 件)

Erik S.
Erik S. 2015 年 2 月 18 日
Hi
You do the integration in the loop with only 1 value at the time, so the integral should be 0. You should pass vectors to the trapz function. Do you want to do a double integral? Or integrate each row in the matrix u1_1?
  1 件のコメント
Habib
Habib 2015 年 2 月 18 日
thank you for your attention, Erik S.
so, I can't understand, but, this integration is one dimensional and I think "integrate each row in the matrix u1_1" be true. so what is your suggestion? what is solution ?

サインインしてコメントする。


Erik S.
Erik S. 2015 年 2 月 18 日
I send a file, try it.
  1 件のコメント
Habib
Habib 2015 年 2 月 18 日
the answer of trapz,u2, is a 1*300 array and I want it be a 300*300 matrices and plot u2 by mesh.
like this:
do you think it is possible?

サインインしてコメントする。


Erik S.
Erik S. 2015 年 2 月 19 日
Hi again,
I'm not sure I understand your problem. But I send a new file, is it the result you need?
  1 件のコメント
Habib
Habib 2015 年 2 月 19 日
Thanks.
Your codes give us a shape like the above figure but firstly we have to use Trapz and then plot it. The u1_1 = (r./w).^2.*exp(-r.^2./w.^2) equation is a laguerre-gaussian beam equation and I want to propagate it along 'L' distance. For propagation, I have to use in following integral.
I am so ashamed for bothered you. excuse me.
so how we can solve numerically this integral?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeNumerical Integration and Differentiation についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by