首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

数学建模-MatLab绘图作业

  • 25-02-21 21:00
  • 2875
  • 5715
blog.csdn.net

一、实验目的(本次实验所涉及并要求掌握的知识点)

二、实验内容与设计思想(设计思路、主要数据结构、主要代码结构、主要代码段分析、电路图)

创建数组

指定元素的数组A=[3 10 1 6 5]

两个等差数组a和b,起始值为2,间距分别为2和3,终值为 10;运用linspace函数创建[2,8]之间,包含8个元素的等差数组c

  1. >> A=[3 10 1 6 5]
  2. A =
  3. 3 10 1 6 5
  4. >> a=2:2:10
  5. a =
  6. 2 4 6 8 10
  7. >> b=2:3:10
  8. b =
  9. 2 5 8
  10. >> c=linspace(2,8,8)
  11. c =
  12. 列 1 至 7
  13. 2.0000 2.8571 3.7143 4.5714 5.4286 6.2857 7.1429
  14. 列 8
  15. 8.0000

创建矩阵

矩阵B的第一列和第四列是数组A的转置,第2列为A+1的转置,第3列为A-1的转置。

将矩阵B的第2~5行中的第1、3列元素赋值给矩阵C

  1. >> B=[A' (A+1)' (A-1)' A']
  2. B =
  3. 3 4 2 3
  4. 10 11 9 10
  5. 1 2 0 1
  6. 6 7 5 6
  7. 5 6 4 5
  8. >> C=B([2,3,4,5],[1,3])
  9. C =
  10. 10 9
  11. 1 0
  12. 6 5
  13. 5 4

数组和矩阵的运算 

计算A+a、A.*a、A^a

删除矩阵B的第2行

求矩阵B的大小和维数

  1. >> A+a
  2. ans =
  3. 5 14 7 14 15
  4. >> A.*a
  5. ans =
  6. 6 40 6 48 50
  7. >> A.^a
  8. ans =
  9. 9 10000 1 1679616 9765625
  10. >> B([2],:)=[]
  11. B =
  12. 3 4 2 3
  13. 1 2 0 1
  14. 6 7 5 6
  15. 5 6 4 5
  16. >> size(B)
  17. ans =
  18. 4 4
  19. >> length(size(B))
  20. ans =
  21. 2

MATLAB程序设计

编程求\sum _{n=1}^{20}n!

从键盘输入一个4X5的矩阵,编程求出其最大元素和最小元素值及所在位置。

 一球从100m高度自由下落,每次落地后反跳回原高度的一半,再落下,求它在第10次落地时,共经过多少m?

  1. //使用for循环语句
  2. >> s=0;
  3. for i=1:20
  4. s=s+sum(factorial(i));
  5. end
  6. disp(s)
  7. 2.5613e+18
  8. //或者直接使用symsum函数
  9. >> syms n
  10. >> symsum(sum(factorial(n)),n,1,20)
  11. ans =
  12. 2561327494111820313

Symsum函数用于在Matlab 中求和。

语法为:symsum(f,n,a,b),其中:

f是需要求和的表达式;

n是求和符号,如k或i;

a是求和的下限;

b是求和的上限。

  1. >> r=randi(100,4,5)
  2. r =
  3. 44 19 71 66 96
  4. 39 49 76 17 35
  5. 77 45 28 12 59
  6. 80 65 68 50 23
  7. >> x=max(max(r))
  8. x =
  9. 96
  10. >> y=min(min(r))
  11. y =
  12. 12
  13. >> [i,j]=find(x==r)
  14. i =
  15. 1
  16. j =
  17. 5
  18. >> [i,j]=find(y==r)
  19. i =
  20. 3
  21. j =
  22. 4

Randi函数用于生成随机的矩阵,第一个数字为范围,max(x),min(y)用于求矩阵中的最大最小值,由于max/min用于矩阵时返回的是提取每行最大/最小元素的数组,所以连续两次套用max/min函数以便直接得到矩阵中的最大/最小元素值。

  1. >> h=100
  2. h =
  3. 100
  4. >> x=h
  5. x =
  6. 100
  7. >> for i=1:10
  8. h=h/2;
  9. x=x+2*h;
  10. end
  11. >> disp(x);
  12. 299.8047

C语言入门题,简单的编程

MATLAB绘图命令 

用plot,fplot绘制函数y=cos(tan(πx))的图形。

用ezplot绘制函数exy-sin(x+y)=0在[-3,3]上的图形。 

用ezplot绘制摆线x=a(t-sint) y=a(1-cost),t∈[0,2π]的图形。
用surf,mesh绘制曲面z=2x2+y2。

用polar绘制阿基米德螺线r=aθ和三叶玫瑰线r=acos3θ

  1. %plot,fplot函数
  2. >> x=linspace(-0.5,0.5,30)
  3. >> y=cos(tan(pi*x));
  4. >> plot(x,y)
  5. >> fplot(@(x)[cos(tan(pi.*x))],[-0.4,0.4])
  6. %ezplot函数
  7. >> ezplot('exp(x*y)-sin(x+y)=0',[-18,18])
  8. %ezplot绘制摆线
  9. >> a=1;
  10. >> x=a*(t-sin(t));
  11. >> y=a*(1-cos(t));
  12. >> ezplot(x,y,[0,2*pi])
  13. %用surf ,mesh绘制曲面z
  14. >> x = -5:0.5:5;
  15. y = -5:0.5:5;
  16. [X, Y] = meshgrid(x, y);
  17. Z = 2*X.^2 + Y.^2;
  18. subplot(1, 2, 1);
  19. surf(X, Y, Z);
  20. >> subplot(1, 2, 2);
  21. meshc(X, Y, Z);
  22. %使用ploar绘制阿基米德螺线
  23. theta = 0:0.1:6*pi;
  24. a = 6;
  25. r = a*theta;
  26. subplot(1, 2, 1);
  27. polar(theta, r);
  28. %使用ploar绘制三页玫瑰线
  29. theta = 0:0.01:2*pi;
  30. rho = cos(3*theta);
  31. polarplot(theta,rho)

效果图:

                                           左为surf绘制,右为mesh绘制

生成图像可以使用title(titletext)函数来添加标题,不用在word里面给图加题注,这里笔者偷懒了没有用。

结语

刚学数学建模这门课,这篇文章是老师布置的作业,感觉对于代码能力的需求比较低,有些C语言基础就能应对,主要还是对于数学能力的要求更多一些,但是勤查官方文档的好习惯不能丢,有想法多查查文档总能有收获。

注:本文转载自blog.csdn.net的daimaonewind的文章"https://blog.csdn.net/HYC591145022/article/details/142425512"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

137
数学
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top