从零开始的数模(六)python在高等数学和线性代数中的应用

科学计算设计数值计算和符号计算,在python中作基础数值计算用numpy和scipy工具库,作符号运算用sympy工具库

sympy工具库–符号运算

在这里插入图片描述

在这里插入图片描述 在这里插入图片描述

在这里插入图片描述 符号运算基本知识

1.利用symbols函数创建符号变量构造多个符号变量时中间以空格分隔

在这里插入图片描述

2.利用符号变量创建表达式

3.利用符号表达式的subs方法计算表达式的符号值,利用evalf或n方法获得任何对象的浮点近似值

在这里插入图片描述

 sympy处理有理数的合并,化简

  1. together函数计算有理数的加法
  2. apart函数计算有理数的除法在这里插入图片描述

上述together函数实现了分式的通分,apart函数实现了分式的化简

用sympy做符号函数画图 

支持二维曲线,三维曲面,隐函数等的画图

在这里插入图片描述

在这里插入图片描述 sympy在高等数学中的符号解 

可以用于求极限,求导数,级数求和,泰勒展开,不定积分和定积分,求方程的解

scipy工具库–数值运算

scipy工具库是对numpy的功能扩展,提供了许多高级数学函数,如微积分,方程求解等

scipy常用模块

微积分模块支持数值积分和微分方程数值解的功能

在这里插入图片描述

1.利用quad函数求函数的一重积分,f通常采用lamba函数的形式 

在这里插入图片描述

 2.利用dblquad,tplquad函数求多重积分

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述 求非线性方程(组)的数值解

fsolve函数第一个参数是函数f,由于方程可能不止一个解,后面的参数是guess的解的估计值

在这里插入图片描述

在这里插入图片描述 高等数学问题的符号解和数值解 

求非线性方程组的数值解

 一般阶数大于等于5以上的非线性方程组无法找到准确的解的表达式,只能通过一些特殊的方法找到方程在误差范围内的数值解

二分法

在这里插入图片描述

python求解 

在这里插入图片描述

import numpy as np 

def binary_search(f,eps,a,b):
    c=(a+b)/2
    while np.abs(f(c))>eps:
        if f(a)*f(c)<0 :b=c
        else :a=c
        c=(a+b)/2
    return c
f=lambda x:x**3-2*x-5
print("二分法求得的根为:",binary_search(f,0.5e-3,2,3))

 运行结果
二分法求得的根为: 2.09454345703125

牛顿迭代法

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述 线性代数问题的符号解和数值解

 可以求矩阵的行列式,秩,逆矩阵,构造特殊矩阵(单位矩阵),求向量的模等

  1. sympy求解线性方程组的符号解
  2. numpy求解线性方程组的数值解在这里插入图片描述

在这里插入图片描述

 在这里插入图片描述

在这里插入图片描述

在这里插入图片描述 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟雨平生9527

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值