Python 数值计算与数值分析基础

Python 数值计算与数值分析基础

示例演示

当涉及到Python数值计算和数值分析时,下面是20个示例,涵盖了一些常见的用法:

1.数值积分:

在 Python 中,你可以使用 scipy.integrate 模块中的 quad 函数来进行数值积分

import numpy as np
from scipy.integrate import quad

# 定义被积函数
f = lambda x: np.sin(x)

# 计算积分
result, error = quad(f, 0, np.pi)

# 输出结果
print("积分结果:", result)
print("误差估计:", error)
积分结果: 2.0
误差估计: 2.220446049250313e-14

2.数值微分:

import numpy as np

# 定义函数
f = lambda x: np.cos(x)

# 定义微分点和一个很小的h值
x0 = 0.5
h = 1e-5

# 计算数值微分(使用中心差分法)
numerical_derivative = (f(x0 + h) - f(x0 - h)) / (2 * h)

# 输出结果
print("数值导数结果:", numerical_derivative)
数值导数结果: -0.47942553859647846

3.非线性方程求根:

在 Python 中,你可以使用 scipy.optimize 模块的 fsolve 函数来求解方程。

import numpy as np
from scipy.optimize import fsolve

# 定义方程
def equation(x):
    return x**2 - 2

# 使用 fsolve 进行求解
solution = fsolve(equation, 1.5)

# 输出结果
print("方程的解:", solution[0])
方程的解: 1.4142135623730951

4.线性方程组求解:

在 Python 中,使用 NumPy 库可以方便地处理矩阵和线性代数运算。使用 np.linalg.solve(A, b) 函数求解线性方程组Ax=b。

import numpy as np

# 定义矩阵 A 和向量 b
A = np.array([[1, 2], [3, 4]])
b = np.array([5, 6])

# 求解线性方程 Ax = b
x = np.linalg.solve(A, b)

# 输出结果
print("解 x:", x)
解 x: [-4.   4.5]

5.曲线拟合:

在 Python 中,你可以使用 NumPy 和 SciPy 库来生成数据,并使用 Matplotlib 进行绘图。对于拟合功能,可以使用 scipy.optimize.curve_fit 来实现。

import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit

# 定义 sine 函数
def sin_func(x, a, b, c, d):
    return a * np.sin(b * x + c) + d

# 生成数据
x = np.linspace(0, 2 * np.pi, 100)
y = np.sin(x) + np.random.rand(len(x)) * 0.2  # 添加随机噪声

# 拟合数据
initial_guess = [1, 1, 0, 0]  # 初始猜测参数
params, covariance = curve_fit(sin_func, x, y, p0=initial_guess)

# 生成拟合曲线
y_fit = sin_func(x, *params)

# 绘制结果
plt.scatter(x, y<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值