矩形波导TM11模matlab仿真

TM11

仅供参考嗷!!

clc;
clear;

count = input(‘迭代次数:’);%迭代次数
w = 2/(1+sin(pi/(count-1)));%收敛因子
h = pi/7;a = pi/11;%矩形波导尺寸
xa = input(‘单边节点数:’);%单边节点

tol = 10e-3;

%初始化
u=zeros(xa,xa);

%内点赋值
for i = 2:(xa - 1)
for j = 2:(xa - 1)
u(i , j) = 1;
end
end

%边界赋值
u(1,:) = 0; u(xa,:)= 0;
u(:,1) = 0; u(:,xa)= 0;

%kc初始化
kc = 0.1;

%迭代初始化
k = 0;
sum1 = 0; sum2 = 0; sum = 0;

%差分(超松弛)
while k < count
err = 0;
temp = u(i,j);
for i = 2 : xa - 1
for j = 2: xa - 1
u(i,j)=u(i,j)+w*((((u(i+1,j)+u(i,j+1)+u(i-1,j)+u(i,j-1)))/(4-(kc*h)^2))-u(i,j));
err = err + abs(temp - u(i,j));
end
end
k = k + 1;

%对kc进行迭代
for i = 2: xa-1
for j = 2 : xa-1
sum1 = sum1 + u(i,j)(u(i+1,j)+u(i,j+1)+u(i-1,j)+u(i,j-1)-4u(i,j));
sum2 = sum2 + u(i,j)^2;
end
end
kc = (sqrt(-sum1/sum2))/h;
%保证精确度
if(err<tol)
break
end
end

surf(u);
title(‘TM11’);

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值