查看: 333|回复: 5|关注: 0

[已解决] 如何初始化一个如图所示的速度场??红色的涡为顺时针旋转,蓝色的涡为逆时针旋转

[复制链接]

新手

9 麦片

财富积分


050


4

主题

10

帖子

0

最佳答案
如何初始化一个如图所示的速度场??红色的涡为顺时针旋转,蓝色的涡为逆时针旋转

速度场

速度场

新手

9 麦片

财富积分


050


4

主题

10

帖子

0

最佳答案
 楼主| 发表于 2019-1-11 16:34:45 | 显示全部楼层
我使用下列方法
  1. xmax=500;ymax=500;
  2. lamtax0=1.01.*xmax./4;
  3. lamtay0=1.01.*ymax./4;
  4. uint=5;
  5. [jy,ix]=meshgrid(1:ymax,1:xmax)
  6. ux=uint.*sin(2.*pi.*ix./lamtax0);
  7. uy=uint.*sin(2.*pi.*jy./lamtay0);
复制代码
产生的是这种速度场,但不是我想要的,有人有方法解决吗?
3QE1A[$YYUGY_W4R]L8))0Y.png

MATLAB 基础讨论
版块优秀回答者

中级

547 麦片

财富积分


5001500


71

主题

1428

帖子

103

最佳答案
  • 关注者: 68
发表于 2019-1-12 12:23:03 | 显示全部楼层 |此回复为最佳答案
你自己生成的不是你想要的,是因为角度不对?

如果只是角度不对,转pi/4。
根据原来的x,y,生成新的x_new,y_new。(转45度)
用x_new,y_new来生成你的z_new.


用原来的x,y和z_new来画图

fig_rot.png

新手

9 麦片

财富积分


050


4

主题

10

帖子

0

最佳答案
 楼主| 发表于 2019-1-13 14:09:11 | 显示全部楼层
本帖最后由 唐尚宇 于 2019-1-13 14:29 编辑
meatball1982 发表于 2019-1-12 12:23
你自己生成的不是你想要的,是因为角度不对?

如果只是角度不对,转pi/4。

您好,感谢您的回答,可以问一下您是怎么具体实现x,y旋转45度的吗?以上面的代码为例
  1. <blockquote>%%
复制代码

MATLAB 基础讨论
版块优秀回答者

中级

547 麦片

财富积分


5001500


71

主题

1428

帖子

103

最佳答案
  • 关注者: 68
发表于 2019-1-14 14:21:20 | 显示全部楼层
唐尚宇 发表于 2019-1-13 14:09
您好,感谢您的回答,可以问一下您是怎么具体实现x,y旋转45度的吗?以上面的代码为例 ...

这个公式。
新的x =  x*cos(45) - y*sin(45)
新的y =  x*sin(45) + y*cos(45)

新手

9 麦片

财富积分


050


4

主题

10

帖子

0

最佳答案
 楼主| 发表于 2019-1-14 19:01:24 | 显示全部楼层
meatball1982 发表于 2019-1-14 14:21
这个公式。
新的x =  x*cos(45) - y*sin(45)
新的y =  x*sin(45) + y*cos(45)

感谢您的帮助:handshake
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表