以二维振动为例展示使用matlab画圆形三维图的偷懒方法

4 篇文章 0 订阅
3 篇文章 0 订阅

画图主要是用极坐标,我们使用画复数的函数来画。

clc;%清空上次的
%draw_Bessel%画这个东西
a=4;%圆形半径%
%定义角向和径向的步长和范围
fai=[-4:0.1:4];
r=[0:0.02:a];

%将fai和r组合起来并生成复平面
[R,T] = meshgrid(fai,r);
Z = R.*exp(1i*T);

%和画具体图有关的
m=1;%阶数%
k_11=4.612/a;
B=1;
A_11=-((besseli(m,k_11*a))/(besselj(m,k_11*a)))*B;%边界条件
F_11=cos(m*T).*((A_11.*besselj(m,k_11*R)+B.*besseli(m,k_11*R)));
F=F_11;

%开始画图
cplxmap(Z,F);
xlabel('')
ylabel('')
title('鼓膜振动');```

总结一下

 1. 定义fai和r,用一维的步长来定义。
 2. 使用meshgrid(fai,r),得到[R,T]组合
 3. 使用Z = R.*exp(1i*T),生成复平面
 4. 极坐标下的函数,径向坐标用R,角向坐标用T。记得运算符号加".",表示矩阵乘法。
 5. 使用cplxmap画图;
 
 缺点是,cplxmap画出的图,颜色用来表示虚部,但因为虚部是0,所以整个图形的颜色都是一样的。
 优点是,不需要想太多,直接往里套就好了,还可以画复平面上的函数。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值