本来是去回答百度知道里的问题的,自己技术不很够,折腾几个小时才搞明白,提交时已经有大神解决了问题了。。。。

是这个问题:

可以用Matlab画出如图微分方程的图像,请大神画出图像给我可以吗?_百度知道
http://zhidao.baidu.com/question/1881911534009541028.html

然后又悲剧地发现自己的结果和大神的不一样。。。。

公式是:

我得承认大神的代码比我的还是简洁多了,写函数时用了arrayFun,好简洁的。我是一个个写的。。。。

但是觉得我做出来的这个还是有点特点的,所以贴出来,和大家交流一下:

我的思路是:

这个问题是在一定的xyz范围内,对每一个点(x,y,z)生成对应的dB并积分,然后作出图像。图中的那个积分式,对于每个(x,y,z)点都要计算一次,由它决定锥形的方向与大小(积分结果是一个向量,当然就决定了方向,然后其模长就是锥形的大小)。

我采用的数值如下:

R=0.1

I=0.1

x,y,z都在[-15,15]区间内,间隔为2.

图像是这样的,我觉得这个图好神奇,照了很多个角度:

代码如下:

clc
clear all
close all
R=0.1;
I=0.1;
k=10^(-7);%k=u0/(4*pi)
[x,y,z]=meshgrid(-15:2:15);
u_fun=@(f)k.*R.*I.*z.*cos(f)./(sqrt((x-R.*cos(f)).^2+(y-R.*sin(f)).^2+z.^2)).^3;
v_fun=@(f)k*R*I.*z*sin(f)./(sqrt((x-R*cos(f)).^2+(y-R*sin(f)).^2+z.^2)).^3;
w_fun=@(f)-k*R*I*(sin(f)*(y-R*sin(f))+cos(f)*(x-R*cos(f)))./(sqrt((x-R*cos(f)).^2+(y-R*sin(f)).^2+z.^2)).^3;
u=integral(u_fun,0,2*pi,'ArrayValued',true);
v=integral(@(f)v_fun(f),0,2*pi,'ArrayValued',true);
w=integral(@(f)w_fun(f),0,2*pi,'ArrayValued',true);
[cx,cy,cz]=meshgrid([-15:2:15]);
h=coneplot(x,y,z,u,v,w,cx,cy,cz,5);
set(h,'FaceColor','r','EdgeColor','none');
camlight;lighting gouraud;
grid on;box on;

大神的结果是:

代码是:

L = R;
I = 0.1; R = 0.1;
u0 = pi*4e-7;
dB = @(x,y,z,t) u0/4*pi * [ R*I*z*cos(t); R*I*z*sin(t); ...
R*I*(sin(t).*(y-R*sin(t))+cos(t).*(x-R*cos(t))) ] / ...
sqrt( (x-R*cos(t)).^2 + (y-R*sin(t)).^2 + z.^2 ).^3;
B = @(x,y,z) quadv(@(t)dB(x,y,z,t),0,2*pi);
[x,y,z] = meshgrid(linspace(-L,L,10));
B = arrayfun(B,x,y,z,'UniformOutput',false);
[m,n,l] = size(B);
[m,n,l] = meshgrid(1:m,1:n,1:l);
Bx = arrayfun(@(i,j,k)B{i,j,k}(1),m,n,l);
By = arrayfun(@(i,j,k)B{i,j,k}(2),m,n,l);
Bz = arrayfun(@(i,j,k)B{i,j,k}(3),m,n,l);
B = sqrt(Bx.^2+By.^2+Bz.^2);
clf reset
colordef(gcf,'black')
[cx cy cz] = meshgrid(linspace(-L,L,10));
h=coneplot(x,y,z,Bx,By,Bz,cx,cy,cz,B,0.8);
set(h,'EdgeColor', 'none');
view(35,25)
xlabel('x');
ylabel('y');
zlabel('z');
box on;
axis tight
camlight left;
camlight right;
lighting phong

MATLAB中向量场的可视化 - Lemniscate的日志 - 网易博客
http://379910987.blog.163.com/blog/static/33523797201162223310546/

Matlab科学计算可视化——基于wind的向量数据集合_柏杨李赞_新浪博客
http://blog.sina.com.cn/s/blog_5e03a4510100n6yl.html

用matlab绘制箭头3-coneplot和streamslice命令 (zz)_懿之的博客_百度空间
http://hi.baidu.com/imheaventian/item/521cbeb407939f9718469712

关于用coneplot画图 - MATLAB 基础讨论 - MATLAB中文论坛 - Powered by Discuz!
http://www.ilovematlab.cn/thread-93141-1-1.html

MIT向量场绘图教程

http://web.mit.edu/8.13/matlab/MatlabTraining_IAP_2012/AGV/DemoFiles/ScriptFiles/Part8_VectorFields.m

Matlab中matlab中for 循环的原理和应用_百度文库
http://wenku.baidu.com/link?url=3I_1ognyDGKwgBjCr-OMiVR34OMJexbKrBecj3VPP6ldk7BQegGkBsxHFE6X8ruIFy26Q9SQJfxxsVvfHHzvccueY077jOaqQu8okwswRcK

Matlab向量场可视化相关推荐

  1. 向量场可视化matlab,Matlab向量场可视化

    本来是去回答百度知道里的问题的,自己技术不很够,折腾几个小时才搞明白,提交时已经有大神解决了问题了.... 是这个问题: 然后又悲剧地发现自己的结果和大神的不一样.... 公式是: 我得承认大神的代码 ...

  2. MATLAB机器人可视化

    1.前记:可能用Robotics Toolbox建立的机器人模型与实际机器人在外观上存在天壤之别吧,直接将CAD软件(UG.SolidWorks.CATIA.Proe等)做好的3D模型导入MATLAB ...

  3. matlab机器人,MATLAB机器人可视化

    1.前记:可能用Robotics Toolbox建立的机器人模型与实际机器人在外观上存在天壤之别吧,直接将CAD软件(UG.SolidWorks.CATIA.Proe等)做好的3D模型导入MATLAB ...

  4. 五、MATLAB数据可视化

    五.MATLAB数据可视化 声明: 笔记是学习慕课网<科学计算与MATLAB语言>课程和刘卫国主编的<MATLAB程序设计与应用(第3版)>后的个人总结,方便自己以后巩固和复习 ...

  5. Matlab:可视化四维数据

    Matlab:可视化四维数据 以可视化形式呈现具有离散变量的四维数据 用多个绘图可视化四维数据 以可视化形式呈现包含三个变量的函数 可视化空间体中的数据 绘制包含复变量的函数 以下示例演示在 MATL ...

  6. Matlab数据可视化(1):基础篇 I

    本文在<MATLAB Graphics and Data Visualization Cookbook>一书的基础上,介绍Matlab数据可视化方法. 我们假设读者已经具备Matlab的基 ...

  7. Matlab:可视化标量三维体数据的方法

    Matlab:可视化标量三维体数据的方法 什么是标量三维体数据? 显示 MRI 数据的方法 更改数据格式 显示 MRI 数据的图像 显示二维等高线切片 显示三维等高线切片 将等值面应用于 MRI 数据 ...

  8. matlab三维可视化,三维可视化 - MATLAB Simulink - MathWorks 中国

    以下示例演示在 MATLAB® 中以可视方式呈现体数据的几种方法. 三维体可视化是指为三维网格上定义的数据集创建图形表示. 可视化标量三维体数据的方法有几种,例如 MRI 切片. 以下示例演示在 MA ...

  9. matlab数据可视化总结,机器学习----Matlab数据可视化总结(plot篇)

    前言 通过资料的整理,使用Matlab语言的plot函数将数据可视化,plota函数也是一个比较常用的二维绘图函数,针对向量或矩阵.如果你也想试一试,初学者记得使用clf.close或close al ...

最新文章

  1. ThinkPad R400在Windows7下的几个问题
  2. AGG第二课 代码框架以及命名规则
  3. Java开发工具和环境,你了解多少?(二)
  4. bootsect.s文件阅读问题集
  5. 将h.264裸码流推送到RTMP服务器
  6. 文档排序--相似度模型--VSM
  7. 人工智障学习笔记——机器学习(2)线性模型
  8. 怎样避免MYSQLD被OOM-KILLER杀死?
  9. matlab 动画_MATLAB作图实例:51:表面动画
  10. 从趣味游戏到排序算法(2)
  11. Js获取file上传控件的文件路径总结
  12. 2020年第十届C/C++ B组第二场蓝桥杯省赛真题(跑步锻炼)第4道
  13. axure后台示例_AxureUX中后台管理信息系统通用原型方案 v1.1
  14. linux mint 下如何制作win7启动盘
  15. 天价电费成5G建设拦路虎,多省出台政策给运营商减负
  16. 关于笔记本连接显示器检测不到的问题(NoVideoInput)
  17. dhtmlxgrid导出的js_dhtmlx之dhtmlXGrid显示数据
  18. 扫码器:壹码通(EMT 6621)二维码带多个回车换行处理
  19. <UDP网络编程>——《计算机网络》
  20. 最全最强解析:支付宝钱包系统架构内部剖析(架构图)

热门文章

  1. FaceBook中国程序员之死,38岁跳楼轻生,压力让他生不如死!
  2. springmvc-kuang
  3. c语言流动字体显示的程序,1602字符液晶显示屏程序详解(C语言详细解说)
  4. c语言中十六进制乘以16啥意思,C语言16进制中16怎么表示?
  5. 深度学习~模糊神经网络(FNN)
  6. 《神经科学:探索脑》学习笔记(第12章 躯体感觉系统)
  7. 一篇文章入门Mysql
  8. TypeScript 初级教程-姜威-专题视频课程
  9. 分析----项目可行性
  10. java中shutdownoutput_Java Socket shutdownOutput和shutdownInput是否为“Duplicate ACK#:1”