计算曲线长度,根据线积分公式:
,令积分函数f(x,y,z) 为1,即计算曲线的长度,将其微元化:
其中
根据此时便可在python编程实现,给出4个例子,代码中已有详细注释,不再赘述
'''
计算曲线长度,根据线积分公式:
\int_A^Bf(x,y,z)dl,令积分函数为1,即计算曲线的长度
'''
import numpy as np
from mpl_toolkits.mplot3d import *
import matplotlib.pyplot as plt
## 求二维圆周长,半径为1,采用参数形式
def circle_2d(dt=0.001,plot=True):
dt = dt # 变化率
t = np.arange(0,2*np.pi, dt)
x = np.cos(t)
y = np.sin(t)
# print(len(t))
area_list = [] # 存储每一微小步长的曲线长度
for i in range(1,len(t)):
# 计算每一微小步长的曲线长度,dx = x_{i}-x{i-1},索引从1开始</