登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
二维离散随机介质matlab如何实现
发帖
回复
1124
阅读
4
回复
[
求助
]
二维离散随机介质matlab如何实现
离线
serena_sha
UID :79388
注册:
2011-06-23
登录:
2011-11-07
发帖:
10
等级:
仿真新人
0楼
发表于: 2011-07-11 21:41:43
— 本帖被 hefang 执行合并操作(2011-07-11) —
基质上随机分布球形粒子,粒子折射率为大于1,均相同,基质折射率为1,粒子的半径也为随机分布。高手请指点一二,有兴趣的大家一起讨论 ..
zHOE.V2Qo
n_n|^4w
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
离线
serena_sha
UID :79388
注册:
2011-06-23
登录:
2011-11-07
发帖:
10
等级:
仿真新人
1楼
发表于: 2011-07-11 21:38:15
二维离散随机介质在matlaB里如果实现
最近研究这个程序,就是基质上随机分散球形粒子,粒子的折射率都一样,基质的折射率为1,不知道该如何表达?希望高手可以指点一二,大家也可以与我讨论。
共
条评分
离线
serena_sha
UID :79388
注册:
2011-06-23
登录:
2011-11-07
发帖:
10
等级:
仿真新人
2楼
发表于: 2011-07-11 21:44:20
这是连续的二维随机介质的程序,离散的该如何下手呢?
%[nR|a<
function b=randmedia(Z,X,A,B,mean,variance)
TsX+. i'
mu=4000;dalta=0.05;
+qdIj] v
A=20;%%%%%%%%%%%%%%%%%%%%%%%参数A
e?!L}^f6X
B=10;%%%%%%%%%%%%%%%%%%%%%%%参数B
<rB3[IJo
Z=2^9;%%%%%%%%%%%%%%%%%%%%%%%模型大小Z方向
!{Q:(B#ec
X=2^9;%%%%%%%%%%%%%%%%%%%%%%%模型大小Y方向
zkh hN"bX
dz=1;dx=1;%%%%%%%%%%%%%%%%%%%%%%%网格间距
&"[)s[m+t
U=kx`j>
dalta=dalta*mu;
';b3Mm #
AUTO=zeros(Z,X);
{Z#e{~m#
for i = 1:Z
m ZtvG,
for j = 1:X
cq,v1Y<
AUTO(i,j)=rand(1,2);
rBD(2M
end
I/On3"U%
end
i*S|qX7``
AUTO = fft2(AUTO);
zJ;>.0
AUTO = real(AUTO)^2+imag(AUTO)^2;
V06CCy8n
% AUTO = abs(AUTO);
^sifEgG *d
w; 4jx(
rand('twister', sum(100*clock));
2mqK3-c
RAND=rand(Z,X).*(2*pi);
&|.hkR2k
% RAND=variance+2*variance.*rand(Z,X);
s.y q}Q
%
T-|9o|~z
<vB<`
REAL=AUTO.*cos(RAND);
+Qh[sGDdY
IMAGE=AUTO.*sin(RAND);
ebN(05ZV
Rand = complex(REAL,IMAGE);
'qL5$ zG
Rand = fft2(Rand);
C$<"w,
Rand = real(Rand)^2+imag(Rand)^2;
, 3X: )
% Rand = abs(Rand);
jzs.+dAg
+Edzjf~Tt
% figure(1);
M{?.hq
% imagesc(Rand);
O' +"d%2'
a=double(Rand); % a表示原始图像灰度矩阵
D|d4:;7
q,B3ru.?d
hw=0;
e74zR6
t;8\fIW5
[m n]=size(a);
l|YT[LR7
A4G,}r *n
b=zeros(Z-2*hw,X-2*hw);
7} be>(
Rj[hhSx 2
for i=1+hw:Z-hw %求平滑矩阵
Hm %g_Mt
HH)"]E5
for j=1+hw:X-hw
XTJvV
fb\DiKsW
wi=a(i-hw:i+hw,j-hw:j+hw);
QyPg |#T2>
^P`NMSw
b(i-hw,j-hw)=mean2(wi);
M[, D *
_!n}P5
end
#s"851e
*AZ?~ i^o
end
*>jjMy n
RMoJz6^>
b=zscore(b);
}e<'BIME
b=mu+dalta*b;
ddsUz1%l
figure(4);
b~7Jh:%@;
mesh(b)
)^4hQ3BS
[Nz,Nx]=size(b);%randmedia
4j>fI)FUW
MIN=min(b);%randmedia
)kYOHS
MIN=min(MIN);
0rD#s{?
MAX=max(b);%randmedia
XCDSmZ
MAX=max(MAX);
WwuZ(>|
N=50;
>$\Bu]{1
step=(MAX-MIN)/N;
ncv7t|ZN
nV=zeros(1,N);
v*SAI]{#~
% for i = 1:Nz
;DuXSy!g
% for j = 1:Nx
z8HsYf(!
% for n=1:N
V8hO8
% if((MIN+step*(n-1))<b(i,j) & (MIN+step*(n))>=b(i,j))%randmedia
Vtb1[cnna
% nV(1,n)=nV(1,n)+1;
hSB?@I4s<\
% break;
jd 1jG2=f
% end
@%1IkvJV
% end
o#>a 5
% end
B8T\s)fxnX
% end
%-+j
% figure(5);
W|MWXs5'1*
% plot([MIN:step:MIN+(N-1)*step],nV);
!Xj#@e
共
条评分
离线
jiandan1986
UID :77042
注册:
2011-05-09
登录:
2012-04-16
发帖:
25
等级:
仿真新人
3楼
发表于: 2011-07-24 19:44:36
你好,我想请教一下:加平滑矩阵的目的是什么啊?还有你是想画出随机介质的示意图还是其它什么啊?
共
条评分
离线
jiandan1986
UID :77042
注册:
2011-05-09
登录:
2012-04-16
发帖:
25
等级:
仿真新人
4楼
发表于: 2011-07-24 19:46:09
回 2楼(serena_sha) 的帖子
我也挺感兴趣的,希望我们可以讨论一下哈。
共
条评分
发帖
回复