博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python数值计算:一 使用Pylab绘图(2)
阅读量:5898 次
发布时间:2019-06-19

本文共 1245 字,大约阅读时间需要 4 分钟。

1.2.3绘制曲线、图示

对于由指数函数和正弦函数相乘形成的新函数:

\[y = e ^{ax}sinbx\]
当a = -0.5,b = 2时,画出函数曲线,在曲线上标记极大值。

a = -0.5b = 2x = arange(0, 10, 0.01)y = exp(a * x)*sin(b*x) #显示曲线plot(x,y,label = "$y=e^{ax}sin^{bx}$ \n$a=-0.5,b=2$", color = "red")legend() #显示图示 #求极值ym = []xm = []ym.append(y.max())xm.append(x[y.argmax()]) #绘制极值和极值杆线stem(xm,ym, "--")txt = "({0},{1})".format(str(xm[0]),str(ym[0]))text(xm[0], ym[0], txt) #显示网格grid()title(u"函数曲线")xlabel(u"横坐标")ylabel(u"纵坐标")

结果如图

曲线和图示

1.2.4绘制曲线组和极值函数

绘制当 b = 0.5 , a = -0.6到0的7个值,间隔为0.1,画出函数曲线族,画极大值杆线,画出极大值的分布曲线。

对于函数任意连续函数,其导数 = 0处为其极值。\[y = e ^{ax}sinbx\]的导数为:
\[y = ae^{ax}sinbx + be^{ax}cosbx\]
\[y^、 = 0\]
则得

\[tanbx_m + \frac ba = 0\]

\[x_m = \frac {1}{b}(n\pi - arctan\frac ba), n = 0,1,2,...\]

对于第一个极值,n取0。

x = arange(0,20,0.2)b = 0.5a = arange(-0.6,0,0.1)A,Y = meshgrid(a,x)Y = exp(A*X)*sin(b*X)plot(x,Y)grid()legend(a) #绘制极值杆线,不如matlab方便ym = []offset = []for col in tY:    ym.append(col.max())    offset.append(col.argmax())   xm = []for i in offset:    xm.append(x[i])stem(xm,ym,"--") #绘制极值函数图形a = arange(-1,-0.001,0.001)xm = -arctan(b/a)/bym = exp(a * xm) * sin(b * xm)plot(xm, ym,"--") #~~title(u"函数曲线族" + "$y=e^{ax}sinbx$")xlabel("$\itx$")ylabel("$\ity$")

曲线族

转载于:https://www.cnblogs.com/abcat/p/3619397.html

你可能感兴趣的文章
Spring Boot 教程系列学习
查看>>
PHP 打印函数之 print print_r
查看>>
学生信息管理系统分析和感想
查看>>
如何在ASP.NET中生成HTML5离线Web应用
查看>>
阿里云里Centos 7 PHP7环境配置 LNMP
查看>>
年卡在手,城墙我走: 记葡萄城控件团队建设
查看>>
__set魔术方法可不可以加private属性
查看>>
MySQL 4种事务的隔离级别
查看>>
跟我一起学docker(13)--docker Machine的使用
查看>>
有关Java字符编码的一些问题
查看>>
二:Unit 4
查看>>
影响英语单词拼写的6大因素
查看>>
计算机硬件基础知识
查看>>
SQLServer删除/重建/禁用/启用外键约束
查看>>
Makefile之深入浅出
查看>>
Unity3D播放视频
查看>>
linux运维工程师必会技能,用mail向qq邮箱发邮件。
查看>>
Spring AOP源码分析(四)Spring AOP的JDK动态代理
查看>>
99%的程序都没有考虑的网络异常
查看>>
mysql-DDL-DML-DCL
查看>>