1、数值计算 第一课时 第 4 单元 4.2 学习目标 感受数据的图形化表示。设计解析式或迭代方程,进行数值计算,解决问题。了解数值类算法在实际问题解决时的应用及常用方法。数学是计算机科学的理论基础之一。在实际问题的求解过程中,有许多数学分支,如解析几何、离散数学等,都是计算机科学所依赖的重要理论工具。借助计算机程序,可以解决很多数学方法所描绘的数值计算问题。本节我们将围绕“与数学公式面对面”项目探讨在中学数学领域中常见的数学公式与程序设计的有趣结合。活动1 用WPS表格绘制正弦曲线 利用平时使用的电子表格软件就能绘制函数图像。方法如下:若以30为间隔,绘制0360之间的正弦函数图像,则首先需要在
2、WPS中完成表格数据的计算。A B C D 1 x sin(x)sin(-x)sin(2x)/2 2 0=sin(pi()*A2/180)=sin(pi()*(-A2/180)3 30 4 60.14 360 填表之后,选择相应的数据,建立折线图图表,设置x轴数据系列格式,可绘制出函数的图像。用WPS表格整理数据有时还是不太方便,我们还可以用什么样的方法管理数据呢?操作步骤:选择数据插入x、y散点图带平滑线的散点图 仔细观察图像,会发现图像的关键点太少,精度不够,图像不光滑。要想提高图像的光滑程度,就要减小角度间隔,但间隔增加,工作量也会随之增加:每隔1画一个点,数据表上就会增加300多行新数
3、据;如果以0.1为间隔,将有3000多行数据。在Python中,绘制函数图像一般要用到numpy和matplotlib两个模块,利用这两个模块可以绘制出更精细的函数图像。numpy 模块简介 numpy是一个科学计算包,其中包含很多数学函数,如三角函数、矩阵计算方法等。通过该模块中的arange函数可以创建一个等差数列。如在02 之间每隔0.01取个值,则可以用arange(0,2*numpy.pi,0.01)来表示,其中numpy.pi表示 。下列代码可以产生sin(x)的若干个关键点。numpy.pi 计算机中的表述 数学中的表述 例如:2*numpy.pi=2 3*numpy.pi=3
4、Numpy应用创建三角函数图像 加载numpy模块并取一个简洁的别名为np,便于后续引用 import numpy as np#x在0到2:之间,每隔0.01取一个点 x=np.arange(0,2*np.pi,0.01)#调用numpy模块的arange函数,其参数为开始参数0,结束参数2*np.pi,间隔参数0.01 y=np.sin(x)通过解析式计算列表x对应的列表y的值 matplotlib 模块简介 matplotlib模块是Python中最出色的绘图库,功能很完善。调用matplotlib.pyplot时,坐标系可以根据数值范围自动生成。matplotlib的绘图原理很简单,利用
5、plot画线函数就可以在直角平面内轻松地将(x,y)坐标点对连接成平滑曲线。加载matplotlib.pyplot并取别名为plt import matplotlib.pyplot as plt plt.plot(x,y)plot()函数将点对连线 plt.show()show()函数将绘制的图像窗口显示出来 参考前页代码,让我们一起来完善以下Python程序,尝试绘出sin(x)sin(-x)和“sin(2x)/2 的图像。活动2 利用Python绘制正弦曲线 _#加载numpy模块并取名为npImport matplotlib.pyplot as plt加载matplotlib.pyplo
6、t并取别名为plt_列表x在0到加之间,每隔0.01取一个点_求sin(x)对应的列表y1的值y2=np.sin(-x)求sin(-X)对应的列表y2的值_求sin(2x)/2对应的列表y3的值plt.plot(x,y1)绘制sin(x)的图像 import numpy as npx=np.arrange(0,2*np.pi,0.01)y3=(np.sin(2*x)/2 y1=np.sin(x)_绘制sin(X)的图像_绘制sin(2x)/2的图像plt.title(sin()#设置图像标题plt.xlabel(x)#设置X轴标题plt.ylabel(y)#设置Y轴标题plt.show()将绘
7、制的函数图像窗口显示出来 plt.plot(x,y2)plt.plot(x,y3)运行代码,对比在活动1中生成的图像,程序绘制的函数图像果然平滑了很多,如下图图所示。Python语言绘制的函数图像 Wps电子表格绘制的函数图像 课堂练习 补全代码,使用numpy和matplotlib模块,绘制出y=x2-2x+4的图像,x的取值范围是-6=x=6,取值间隔为0.001;_#导入numpy模块并取名为npimport matplotlib.pyplot as pltx=np._y=_plt.plot(_,_)_#绘制函数图像巩固提升 1.numpy是一个科学计算包,其中包括很多_,如_、矩阵计算
8、方法等。2.通过numpy模块中的_函数可以创建一个等差数列。如在0-2 之间每隔0.01取个值,则可以用_表示,其中numpy.pi表示_。巩固提升 3.matplotlib模块是一个_。matplotlib的绘图原理很简单,利用_画线函数就可以在直角平面内轻松地将_坐标点对连接成平滑曲线。4.计算机最初研究的应用大多是数值计算,人们主要借助计算机运算速度快,精确度高的特点来解决各种数学问题,这里的数值计算不包括()A.函数计算 B.方程的求解 C.数列求和 D.图像处理 课堂小结 人们对计算机的最初应用大多是数值计算,如函数的计算、方程的求解、数列求和等都属于数值计算。numpy模块:科学计算包 numpy模块的常用函数:arange(开始参数,结束参数,间隔参数)numpy.py 就是 matplotlib模块是Python中的绘图库。函数plot(x,y)绘制出关于x,y的函数图像 函数show()显示函数图像 谢谢观看!