Python三维可视化:Scipy基础二.pdf

上传人:寂**** 文档编号:5391384 上传时间:2022-01-05 格式:PDF 页数:43 大小:737.82KB
返回 下载 相关 举报
Python三维可视化:Scipy基础二.pdf_第1页
第1页 / 共43页
Python三维可视化:Scipy基础二.pdf_第2页
第2页 / 共43页
点击查看更多>>
资源描述

《Python三维可视化:Scipy基础二.pdf》由会员分享,可在线阅读,更多相关《Python三维可视化:Scipy基础二.pdf(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Scipy基础二黄 天 羽www.python123.orgSV11SciPy线性代数-linalgSciPy的linalg模块Numpy和SciPy都提供了线性代数函数库linalg,SciPy更为全面: 解线性方程组 最小二乘解 特征值和特征向量 奇异值分解 解线性方程组求解线性方程组Ax = 即 x = 1numpy.linalg.solve(A, b)scipy.linalg.solve(A, b)A:m x n的方形矩阵x:长为m的向量b:长为m的向量求解线性方程组AX = B 即 X = 1BX:m x n的矩阵B:m x n的矩阵解线性方程组-举例求解1B:解线性方程组-举例运行

2、程序:比较两种方法的运行时间!特征值和特征向量n x n的矩阵A可以看作n维空间中的线性变换。 如果x为n维空间中的一个向量,那么A与x的矩阵乘积是对x进行线性变换之后的向量。 如果x是线性变换的特征向量,那么经过这个线性变换后,得到新向量仍与原来的x保持在同乙方向上,长度可能发生改变。 特征向量的长度在该线性变换下缩放的比例称为其特征值。 = 特征值和特征向量-举例以二维平面上的线性变换矩阵为例:#特征值#特征向量奇异值分解-SVD奇异值分解是线性代数中一种重要的矩阵分解。 假设M是一个m x n阶矩阵,存在一个分解使得: = 其中U是m x m阶酉矩阵;是半正定m x n阶矩阵;是V的共轭

3、转置,是n x n阶酉矩阵。 对角线上的元素为M的奇异值,并通常按照从大到小排列 = 奇异值分解-SVDLinalg库中的svd函数:对矩阵进行奇异值分解其调用形式为:U,s,V=svd(M)奇异值分解-举例SVD分解为例:SciPy统计-statsSciPy的stats模块Stats模块包含了多种概率分布的随机变量连续随机变量是rv_continuous派生类的对象离散随机变量是rv_discrete派生类的对象 连续概率分布 离散概率分布 核密度估计 二项分布、泊松分布、伽玛分布 学生t-分布与t检验 卡方分布和卡方检验连续概率分布获取stats模块中所有的连续随机变量:连续概率分布连续随

4、机变量对象有如下方法:方法说明rvs对随机变量进行随机取值,可以通过size参数指定输出的数组大小pdf随机变量的概率密度函数cdf随机变量的积累分布函数,它是概率密度函数的积分sf随机变量的生存函数,它的值是1-cdf(t)ppf累积分布函数的反函数stat计算随机变量的期望值和方差fit对一组随机取样进行拟合,找出最适合取样数据的概率密度函数的系数连续概率分布以正态分布为例,获取默认正态分布随机变量的期望值和方差:连续概率分布Norm可以像函数一样使用,通过loc和scale参数可以指定随机变量的偏移和缩放参数。连续概率分布调用随机变量X的rvs()方法,得到包含一万次随机取样值的数组x:

5、使用 mean()、var()计算此数组的均值和方差,其结果符合随机变量X的特性。离散概率分布当分布函数的值域为离散时称之为离散概率分布。例如:投掷有六个面的骰子时,获得1到6的整数,因此所得到的赶驴分布为离散的。离散概率分布-举例stats模块中离散分布随机变量都从rv_discrete类继承,也可以直接用rv_discrete类自定义离散概率分布。投掷骰子举例: 数组X保存骰子的所有可能值 数组p保存每个值出现的概率 创建表示这个骰子的随机变量dice离散概率分布-举例投掷此骰子20次,获得符合概率p的随机数:离散概率分布-举例中心极限定律:大量相互独立的随机变量,其均值的分布以正态分布为

6、极限。如何验证?由于每一次投掷骰子可以看作一个独立的随机事件,投掷骰子50次的平均值可以看作“大量相互独立的随机变量”,其平均值的分布应该十分接近正态分布。离散概率分布-举例核密度估计-举例 前面例子中每个点是离散的,因此平均值也是离散的(直方图来显示) 更平滑的显示样本的概率,进行kde.gaussian_kde()进行核密度估计 核密度估计与拟合的正态分布十分相似验证了中心极限定理!核密度估计-举例#拟合正态分布#核密度估计#概率平均值核密度估计-举例SciPy数值积分-integrateSciPy的integrate模块integrate模块提供了几种数值积分算法,包括对常微分方程组(O

7、DE)的数值积分。 计算球体体积 解常微分方程球的体积求解数值积分是对定积分的数值求解,比如利用数值积分计算半圆的面积。 半径为1 单位半圆的曲线方程为y =1 2def half_circle(x):return(1-x*2)*0.5球的体积求解-面积求解简单的方法:将半球分为许多小矩形,计算这些矩形之和。球的体积求解-面积求解使用integrate.quad()进行数值阶分:更为精确!球的体积求解多重定积分可以通过多次调用quad()实现。Integrage提供了 二重定积分 dblquad() 三重定积分 tplquad()球的体积求解二重积分dblquad函数调用形式为 :func2d

8、:二重积分函数,假定x, y是func3d的两个参数a,b:被积分函数的第一个变量x的积分区间gfun,hfun:被积分函数第二个变量y的积分区间,通过变量x计算出变量y的积分区间dblquad(func2d, a, b, gfun, hfun)球的体积求解单位半球面上的点(x,y,z)满足方程2+ 2+2= 1则Z轴坐标值为:球的体积求解对于单位球,使用二重积分计算体积: 对于x轴从-1到1进行积分 对于y轴从-half_circle(x)到half_circle(x)进行积分则半球体的二重积分公式为: = 11 12121 2 2球的体积求解球的体积求解程序运行结果为:通过球体积公式计算半

9、球体积:解常微分方程Integrage模块提供了对常微分方程组进行积分的函数:odeint()举例:如何计算洛伦茨吸引子的轨迹?解常微分方程-洛伦茨吸引子轨迹三个微分方程定义= = = 洛伦茨吸引子的轨迹定义了三维空间中各个坐标点上的速度矢量,从某个坐标开始沿着速度矢量进行积分,计算出无质量点再此空间中的运动轨迹。三个微分方程定义= = = 、为三个常数,不同的参数可以计算出不同的运动轨迹:x(t)、y(t)、z(t)。解常微分方程-洛伦茨吸引子轨迹定义函数lorenz(),计算出某个坐标点在各个方向上的微分值解常微分方程-洛伦茨吸引子轨迹odeint()参数:lorenz:计算某个位置上各个方向的速度的函数(0.0, 1.0, 0.0):位置初始值,计算常微分方程所需的各个变量的初始值t:表示时间的数组,odeint()对此数组中的每个时间点进行求解,得出所有时间点的位置args:直接传递给lorenz,积分过程中为常量解常微分方程-洛伦茨吸引子轨迹调用odeint(),对微分方程求解。解常微分方程-洛伦茨吸引子轨迹

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁