强度计算:有限差分法(FDM)的数值实验设计教程_第1页
强度计算:有限差分法(FDM)的数值实验设计教程_第2页
强度计算:有限差分法(FDM)的数值实验设计教程_第3页
强度计算:有限差分法(FDM)的数值实验设计教程_第4页
强度计算:有限差分法(FDM)的数值实验设计教程_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

强度计算:有限差分法(FDM)的数值实验设计教程1有限差分法基础1.1有限差分法的数学原理有限差分法(FDM,FiniteDifferenceMethod)是一种数值计算方法,用于求解微分方程。其核心思想是将连续的微分方程离散化,通过在网格点上用差商代替导数,将微分方程转换为代数方程组,从而可以使用数值方法求解。1.1.1微分方程离散化考虑一个一维的微分方程:d在有限差分法中,我们首先将空间域离散化,即定义一系列的网格点xi,其中id其中,h是网格间距。1.2离散化过程详解离散化过程包括以下步骤:网格划分:定义网格点,通常网格间距h是均匀的。差分公式:选择适当的差分公式来近似导数。代数方程组构建:将微分方程在每个网格点上用差分公式替换,形成代数方程组。边界条件应用:根据问题的边界条件,修改代数方程组的相应方程。求解代数方程组:使用数值方法(如高斯消元法、迭代法等)求解代数方程组,得到网格点上的解。1.2.1代码示例:使用Python求解一维泊松方程假设我们有如下一维泊松方程:d在x=0和uimportnumpyasnp

fromscipy.linalgimportsolve

#定义网格参数

N=100#网格点数

h=1.0/(N+1)#网格间距

#构建差分矩阵

A=np.zeros((N,N))

foriinrange(N):

A[i,i]=-2

ifi>0:

A[i,i-1]=1

ifi<N-1:

A[i,i+1]=1

A/=h**2

#构建右侧向量

b=np.ones(N)

#应用边界条件

b[0]-=u0/h**2

b[-1]-=u1/h**2

#求解代数方程组

u=solve(A,b)

#输出结果

x=np.linspace(h,1-h,N)

print("网格点上的解:",u)

print("网格点:",x)1.2.2解释上述代码中,我们首先定义了网格参数,包括网格点数N和网格间距h。然后,我们构建了一个差分矩阵A和右侧向量b,其中A的对角线元素为−2/h2,非对角线元素为1/1.3阶和二阶差分公式1.3.1阶导数的差分公式一阶导数的差分公式有前向差分、后向差分和中心差分。以中心差分为例,其公式为:d1.3.2阶导数的差分公式二阶导数的中心差分公式为:d1.3.3代码示例:计算一维函数的一阶和二阶导数假设我们有一个一维函数uximportnumpyasnp

#定义函数

defu(x):

returnx**2

#定义网格参数

N=100

h=1.0/(N+1)

#计算一阶导数

defdu_dx(x,h):

return(u(x+h)-u(x-h))/(2*h)

#计算二阶导数

defd2u_dx2(x,h):

return(u(x+h)-2*u(x)+u(x-h))/(h**2)

#网格点

x=np.linspace(h,1-h,N)

#计算导数

du=[du_dx(xi,h)forxiinx]

d2u=[d2u_dx2(xi,h)forxiinx]

#输出结果

print("一阶导数:",du)

print("二阶导数:",d2u)1.3.4解释在这个例子中,我们定义了一个函数ux通过这些步骤和示例,我们可以看到有限差分法如何将微分方程转换为代数方程组,并使用数值方法求解。这种方法在工程和科学计算中非常常见,特别是在解决强度计算问题时。2FDM在强度计算中的应用2.1强度计算的物理背景强度计算是工程力学中的一个核心领域,它涉及到材料在各种载荷作用下抵抗破坏的能力分析。在实际工程问题中,结构的强度分析往往需要解决复杂的偏微分方程,这些方程描述了结构内部应力、应变与外部载荷之间的关系。有限差分法(FDM)作为一种数值计算方法,通过将连续的物理域离散化为有限数量的节点和网格,将偏微分方程转换为代数方程组,从而提供了一种有效解决强度计算问题的手段。2.1.1示例:一维弹性杆的强度计算假设有一根长度为1米的弹性杆,其一端固定,另一端受到1000N的拉力。杆的横截面积为0.01平方米,弹性模量为200GPa。我们使用FDM来计算杆在拉力作用下的应力分布。2.1.1.1物理方程d其中,σ是应力,F是外力,A是横截面积。2.1.1.2离散化将杆分为10个等长的段,每个段长0.1米。在每个节点上,应力σ的导数可以近似为相邻节点应力的差值除以段长。2.1.2代码示例#导入必要的库

importnumpyasnp

#定义参数

length=1.0#杆的长度,单位:米

force=1000#外力,单位:牛顿

area=0.01#横截面积,单位:平方米

modulus=200e9#弹性模量,单位:帕斯卡

segments=10#杆的离散段数

#计算段长

segment_length=length/segments

#初始化应力数组

stress=np.zeros(segments+1)

#应用FDM计算应力

foriinrange(1,segments):

stress[i]=stress[i-1]+(force/area)*segment_length

#应力边界条件

stress[0]=0#固定端应力为0

stress[-1]=force/area#自由端应力等于外力/横截面积

#输出应力分布

print("Stressdistributionalongtherod:")

fori,sinenumerate(stress):

print(f"Node{i}:{s:.2f}Pa")2.2FDM模型建立步骤FDM模型的建立通常遵循以下步骤:离散化:将连续的物理域划分为有限数量的节点和网格。方程离散:将偏微分方程在每个网格点上用差分公式近似。边界条件:在模型的边界上应用适当的边界条件。求解:解代数方程组,得到每个网格点上的未知量。后处理:分析和可视化计算结果。2.2.1示例:二维平板的强度计算考虑一个2x2米的平板,厚度为0.1米,弹性模量为200GPa,泊松比为0.3。平板受到均匀分布的垂直载荷,载荷强度为1000N/m^2。我们使用FDM来计算平板在载荷作用下的位移。2.2.1.1离散化将平板划分为20x20的网格,每个网格的边长为0.1米。2.2.1.2方程离散对于每个网格点,应用差分公式近似偏微分方程。2.2.1.3边界条件平板的四周固定,位移为0。2.2.1.4求解使用迭代方法求解位移。2.2.1.5后处理可视化位移分布。2.2.2代码示例#导入必要的库

importnumpyasnp

importmatplotlib.pyplotasplt

#定义参数

length=2.0#平板的长度,单位:米

width=2.0#平板的宽度,单位:米

thickness=0.1#平板的厚度,单位:米

modulus=200e9#弹性模量,单位:帕斯卡

poisson_ratio=0.3#泊松比

load=1000#载荷强度,单位:牛顿/平方米

grid_size=0.1#网格边长,单位:米

segments_x=int(length/grid_size)

segments_y=int(width/grid_size)

#初始化位移数组

displacement=np.zeros((segments_x+1,segments_y+1))

#应用FDM计算位移

#这里简化处理,仅展示核心概念

foriinrange(1,segments_x):

forjinrange(1,segments_y):

displacement[i,j]=(displacement[i-1,j]+displacement[i+1,j]+displacement[i,j-1]+displacement[i,j+1])/4+load*grid_size**2/(2*modulus*thickness)

#边界条件

displacement[0,:]=0#左边界

displacement[-1,:]=0#右边界

displacement[:,0]=0#下边界

displacement[:,-1]=0#上边界

#可视化位移分布

plt.imshow(displacement,cmap='viridis',origin='lower')

plt.colorbar()

plt.title('DisplacementDistribution')

plt.show()2.3边界条件与初始条件设定在FDM模型中,边界条件和初始条件的设定至关重要,它们直接影响计算结果的准确性和物理意义。2.3.1边界条件边界条件描述了模型边界上的物理状态,常见的边界条件包括:固定边界:位移为0。自由边界:应力为0。混合边界:位移和应力的组合条件。2.3.2初始条件初始条件描述了模型在计算开始时的状态,对于静态问题,初始条件通常不重要,但对于动态问题,如振动分析,初始位移和速度是必须的。2.3.3示例:一维弹性杆的动态强度计算考虑一根长度为1米的弹性杆,其一端固定,另一端自由。杆的横截面积为0.01平方米,弹性模量为200GPa,密度为7800kg/m^3。杆在初始时刻受到一个瞬时冲击,冲击力为1000N,作用时间为0.001秒。我们使用FDM来计算杆在冲击作用下的动态位移。2.3.3.1初始条件杆在初始时刻的位移和速度为0。2.3.3.2边界条件杆的一端固定,另一端自由。2.3.4代码示例#导入必要的库

importnumpyasnp

#定义参数

length=1.0#杆的长度,单位:米

force=1000#冲击力,单位:牛顿

area=0.01#横截面积,单位:平方米

modulus=200e9#弹性模量,单位:帕斯卡

density=7800#密度,单位:千克/立方米

segments=100#杆的离散段数

time_steps=1000#时间步数

time_step_size=0.001/time_steps#时间步长

#计算段长

segment_length=length/segments

#初始化位移和速度数组

displacement=np.zeros(segments+1)

velocity=np.zeros(segments+1)

#应用FDM计算动态位移

fortinrange(time_steps):

foriinrange(1,segments):

#计算应力

stress=modulus*(displacement[i+1]-2*displacement[i]+displacement[i-1])/segment_length**2

#更新速度

velocity[i]+=stress/density*time_step_size

#更新位移

displacement[i]+=velocity[i]*time_step_size

#应用边界条件

displacement[0]=0#固定端位移为0

velocity[-1]=0#自由端速度为0

#输出位移分布

print("Displacementdistributionalongtherod:")

fori,dinenumerate(displacement):

print(f"Node{i}:{d:.2f}m")通过以上示例,我们可以看到FDM在强度计算中的应用,以及如何通过代码实现模型的建立和求解。FDM提供了一种灵活且强大的工具,适用于解决各种工程力学问题。3数值实验设计3.1实验设计的重要性在强度计算领域,尤其是采用有限差分法(FDM)进行数值模拟时,实验设计的重要性不言而喻。它不仅确保了计算结果的准确性和可靠性,还能够有效地评估和优化模型的性能。通过精心设计的数值实验,我们可以:验证模型的正确性:确保有限差分法的实现符合数学理论和物理定律。评估网格敏感性:理解网格密度对计算结果的影响,避免过拟合或欠拟合。分析收敛性:确定计算结果是否随着网格细化和时间步长减小而趋于稳定。控制误差:识别并量化数值方法中的误差来源,如截断误差和舍入误差。确保稳定性:避免数值解的发散,确保计算过程在物理上合理。3.2网格划分与收敛性分析3.2.1网格划分网格划分是有限差分法中的关键步骤,它将连续的物理域离散化为一系列离散点,以便于数值计算。网格的形状、大小和分布直接影响计算的精度和效率。在强度计算中,网格通常需要在应力或应变变化剧烈的区域进行细化,以捕捉局部效应。3.2.1.1示例代码假设我们使用Python进行网格划分,可以使用numpy库来生成网格点:importnumpyasnp

#定义物理域的范围

x_min,x_max=0,1

y_min,y_max=0,1

#定义网格密度

nx,ny=100,100

#生成网格点

x=np.linspace(x_min,x_max,nx)

y=np.linspace(y_min,y_max,ny)

X,Y=np.meshgrid(x,y)

#打印网格点

print(X)

print(Y)3.2.2收敛性分析收敛性分析是评估有限差分法精度的重要手段。它通过比较不同网格密度下的计算结果,来判断解是否随着网格细化而趋于一致。收敛性分析通常包括:网格细化:逐渐减小网格间距,观察解的变化。误差评估:计算不同网格下的解与精确解(如果可用)之间的差异。收敛率:量化误差随网格间距减小的下降速度。3.2.2.1示例代码考虑一个简单的强度计算问题,如一维弹性杆的应力分析,我们可以使用有限差分法求解,并分析其收敛性:importnumpyasnp

deffdm_stress_analysis(L,E,I,q,nx):

"""

使用有限差分法求解一维弹性杆的应力分布。

参数:

L:杆的长度

E:弹性模量

I:截面惯性矩

q:分布载荷

nx:网格点数

"""

dx=L/(nx-1)

x=np.linspace(0,L,nx)

M=np.zeros(nx)

M[0]=0

M[-1]=0

foriinrange(1,nx-1):

M[i]=M[i-1]-q*dx**2/2/E/I

returnM

#定义参数

L=1.0

E=200e9

I=1e-4

q=10000

#网格点数

nx_values=[10,20,40,80]

#计算不同网格下的应力分布

M_values=[fdm_stress_analysis(L,E,I,q,nx)fornxinnx_values]

#打印结果

fori,Minenumerate(M_values):

print(f"网格点数:{nx_values[i]},应力分布:{M}")3.3误差控制与稳定性条件3.3.1误差控制在有限差分法中,误差主要来源于截断误差和舍入误差。截断误差是由于用差分公式近似微分方程而产生的,而舍入误差则来源于计算机的有限精度。有效的误差控制策略包括:提高差分精度:使用更高阶的差分公式。优化算法:采用更稳定的数值算法,如隐式方法。误差估计:通过后验误差估计来评估解的精度。3.3.2稳定性条件有限差分法的稳定性是确保计算结果物理上合理的关键。对于显式方法,通常存在一个时间步长与空间步长之间的关系,称为CFL条件(Courant-Friedrichs-Lewy条件)。违反CFL条件会导致解的发散。3.3.2.1示例代码考虑一个一维波动方程的数值解,使用显式有限差分法,我们可以检查CFL条件是否满足:importnumpyasnp

defexplicit_fdm_wave_equation(L,c,dt,dx,T):

"""

使用显式有限差分法求解一维波动方程。

参数:

L:域的长度

c:波速

dt:时间步长

dx:空间步长

T:总时间

"""

nx=int(L/dx)+1

nt=int(T/dt)+1

u=np.zeros((nt,nx))

#初始条件

u[0,:]=np.sin(2*np.pi*x/L)

#CFL条件检查

ifc*dt/dx>1:

raiseValueError("CFL条件不满足,可能导致解的发散")

#时间迭代

forninrange(1,nt):

foriinrange(1,nx-1):

u[n,i]=u[n-1,i]-c*dt/dx*(u[n-1,i+1]-u[n-1,i-1])

returnu

#定义参数

L=1.0

c=1.0

dt=0.001

dx=0.01

T=1.0

#求解波动方程

try:

u=explicit_fdm_wave_equation(L,c,dt,dx,T)

print("解的稳定性得到保证")

exceptValueErrorase:

print(e)通过上述代码,我们不仅能够求解一维波动方程,还能确保计算过程的稳定性,避免了不合理的解。这体现了在强度计算中,数值实验设计的严谨性和重要性。4有限差分法的编程实现4.1选择编程语言与工具在实现有限差分法(FDM)的编程过程中,选择合适的编程语言和工具至关重要。Python因其简洁的语法、强大的科学计算库如NumPy和SciPy,以及广泛的社区支持,成为数值计算的首选语言。此外,JupyterNotebook提供了一个交互式的环境,便于代码的编写、测试和结果的可视化。4.2编写FDM算法代码4.2.1示例:一维热传导方程的有限差分法求解假设我们有一根长度为1米的金属棒,初始温度为0°C,两端分别保持在100°C和0°C。我们使用有限差分法来计算金属棒在时间t内的温度分布。4.2.1.1代码实现importnumpyasnp

importmatplotlib.pyplotasplt

#参数设置

L=1.0#材料长度

T_left=100.0#左端温度

T_right=0.0#右端温度

alpha=0.1#热扩散率

dx=0.01#空间步长

dt=0.001#时间步长

x=np.arange(0,L+dx,dx)#空间网格

t=np.arange(0,1,dt)#时间网格

u=np.zeros((len(t),len(x)))#温度矩阵初始化

#边界条件

u[:,0]=T_left

u[:,-1]=T_right

#初始条件

u[0,:]=0

#FDM算法实现

forninrange(0,len(t)-1):

foriinrange(1,len(x)-1):

u[n+1,i]=u[n,i]+alpha*dt/dx**2*(u[n,i+1]-2*u[n,i]+u[n,i-1])

#结果可视化

plt.figure(figsize=(10,6))

plt.plot(x,u[-1,:],label='TemperatureDistribution')

plt.xlabel('Position(m)')

plt.ylabel('Temperature(°C)')

plt.title('TemperatureDistributioninaMetalBarusingFDM')

plt.legend()

plt.grid(True)

plt.show()4.2.1.2代码解释参数设置:定义了金属棒的长度、两端的温度、热扩散率、空间和时间步长。网格生成:使用numpy的arange函数生成空间和时间网格。边界和初始条件:设置金属棒两端的温度和初始温度分布。有限差分法求解:通过迭代更新温度矩阵u,实现热传导方程的数值解。结果可视化:使用matplotlib库绘制最终的温度分布图。4.3代码调试与验证4.3.1调试技巧分步执行:使用JupyterNotebook的单元格执行功能,逐步检查代码的执行结果。打印变量:在关键步骤中打印变量值,确保计算过程正确。可视化检查:通过绘制中间结果,直观地检查算法的正确性。4.3.2验证方法理论解对比:对于某些简单问题,有限差分法的解可以与理论解进行对比,验证算法的准确性。收敛性测试:减小空间和时间步长,观察解的收敛性,确保算法稳定且准确。4.3.3示例:验证有限差分法的收敛性#函数定义:计算有限差分法的解

defsolve_fdm(dx,dt):

u=np.zeros((len(t),len(x)))

u[:,0]=T_left

u[:,-1]=T_right

u[0,:]=0

forninrange(0,len(t)-1):

foriinrange(1,len(x)-1):

u[n+1,i]=u[n,i]+alpha*dt/dx**2*(u[n,i+1]-2*u[n,i]+u[n,i-1])

returnu[-1,:]

#不同步长下的解

dx_values=[0.01,0.005,0.001]

dt_values=[0.001,0.0005,0.0001]

solutions=[solve_fdm(dx,dt)fordx,dtinzip(dx_values,dt_values)]

#结果可视化

plt.figure(figsize=(10,6))

forsolinsolutions:

plt.plot(x,sol,label=f'Solutionwithdx={dx:.3f},dt={dt:.3f}')

plt.xlabel('Position(m)')

plt.ylabel('Temperature(°C)')

plt.title('ConvergenceTestofFDMSolution')

plt.legend()

plt.grid(True)

plt.show()4.3.3.1代码解释函数定义:solve_fdm函数接受空间和时间步长作为参数,返回最终的温度分布。收敛性测试:通过改变空间和时间步长,观察温度分布的变化,验证算法的收敛性。结果可视化:绘制不同步长下的温度分布,直观地展示收敛性。通过上述代码示例和解释,我们详细介绍了有限差分法在编程实现中的关键步骤,包括算法的实现、调试技巧和验证方法。这为理解和应用有限差分法解决实际问题提供了坚实的基础。5案例分析与结果解释5.1典型强度计算案例介绍在工程领域,强度计算是评估结构或材料在不同载荷下性能的关键步骤。有限差分法(FDM)作为数值计算方法之一,被广泛应用于解决强度计算问题,尤其是在复杂几何和载荷条件下的分析。下面,我们将通过一个典型的强度计算案例——悬臂梁的弯曲分析,来介绍FDM的应用。5.1.1案例背景考虑一根长度为L,宽度为b,厚度为h的悬臂梁,其一端固定,另一端自由。当在自由端施加垂直向下的力F时,梁会发生弯曲。我们的目标是使用FDM来计算梁的弯曲变形和应力分布。5.1.2数学模型悬臂梁的弯曲问题可以通过以下偏微分方程描述:d其中,E是弹性模量,I是截面惯性矩,w是梁的垂直位移,x是梁的长度方向坐标。5.1.3FDM应用为了使用FDM求解上述方程,我们首先需要将梁离散化,即将其分为多个小段,每个小段的长度为Δxd接下来,我们将方程在每个节点上应用,形成一组线性方程,然后求解这些方程以得到位移w的数值解。5.1.4Python代码示例下面是一个使用Python和FDM来求解悬臂梁弯曲问题的示例代码:importnumpyasnp

#参数定义

L=1.0#梁的长度

b=0.1#梁的宽度

h=0.05#梁的厚度

E=200e9#弹性模量

F=1000#施加的力

I=b*h**3/12#截面惯性矩

n=100#离散化节点数

dx=L/n#节点间距

#初始化位移向量

w=np.zeros(n+1)

#FDM方程的构建

foriinrange(1,n):

w[i+1]=(dx**4/12/E/I)*F+2*w[i]-w[i-1]

#边界条件应用

w[0]=0#固定端位移为0

#计算应力

stress=-E*(w[2:]-2*w[1:-1]+w[:-2])/dx**2

#输出结果

print("位移向量:",w)

print("应力分布:",stress)5.1.5代码解释在上述代码中,我们首先定义了梁的几何参数、材料属性和载荷条件。然后,我们初始化了一个位移向量,并使用FDM方程在每个内部节点上更新位移值。最后,我们应用了边界条件,并计算了梁的应力分布。5.2FDM数值实验结果分析在完成FDM计算后,我们得到了悬臂梁的位移向量和应力分布。分析这些结果,我们可以观察到梁的弯曲变形和应力变化。5.2.1位移分析位移向量w显示了梁在施加力F作用下的弯曲程度。通常,位移在自由端最大,而在固定端为零。通过位移分布,我们可以评估梁的变形是否在允许范围内。5.2.2应力分析应力分布st5.3实验结果的物理意义解释5.3.1位移的物理意义位移w的数值结果反映了梁在力F作用下的变形情况。较大的位移意味着梁的刚度较低,可能需要增加梁的尺寸或使用更硬的材料来提高其刚度。5.3.2应力的物理意义应力st通过FDM数值实验,我们不仅能够计算出悬臂梁的位移和应力,还能够深入理解梁的力学行为,为工程设计和优化提供重要信息。6高级主题与研究前沿6.1非线性问题的FDM处理6.1.1原理非线性问题在工程和物理领域中普遍存在,有限差分法(FDM)处理非线性问题的关键在于如何将非线性方程线性化,以便于数值求解。通常,这涉及到在每个时间步或空间点上,使用泰勒级数展开或牛顿迭代法来近似非线性项。6.1.2内容在非线性问题中,方程的形式可能随解的变化而变化,例如,非线性弹性力学中的应力-应变关系。处理这类问题时,FDM需要在每个迭代步骤中更新差分方程的系数,以反映非线性效应。6.1.2.1示例:非线性热传导方程考虑一维非线性热传导方程:∂其中,αu是温度u6.1.2.2代码示例importnumpyasnp

importmatplotlib.pyplotasplt

#参数设置

L=1.0#杆的长度

N=100#空间网格点数

dx=L/(N-1)

dt=0.001

alpha0=1.0#初始热导率

alpha_max=2.0#最大热导率

T=0.1#总时间

u0=np.zeros(N)#初始温度分布

u0[N//2]=100#中间点的初始温度

#热导率函数

defalpha(u):

returnalpha0+(alpha_max-alpha0)*u/100

#有限差分法求解

u=u0.copy()

u_new=np.zeros(N)

fortinnp.arange(0,T,dt):

foriinrange(1,N-1):

u_new[i]=u[i]+dt*alpha(u[i])*(u[i+1]-2*u[i]+u[i-1])/dx**2

u=u_new.copy()

#绘制结果

plt.plot(np.linspace(0,L,N),u)

plt.xlabel('位置x')

plt.ylabel('温度u')

plt.title('非线性热传导方程的有限差分解')

plt.show()6.1.3解释上述代码中,我们定义了一个非线性热导率函数αu6.2多物理场耦合的FDM方法6.2.1原理多物理场耦合问题涉及到不同物理现象之间的相互作用,如热-结构耦合、流体-结构耦合等。在FDM中,这通常意味着需要同时求解多个耦合的偏微分方程,每个方程描述一个物理场,而这些方程之间通过边界条件或内部耦合项相互关联。6.2.2内容处理多物理场耦合问题时,FDM需要在每个网格点上同时考虑所有物理场的效应,这可能涉及到复杂的迭代求解过程,以确保所有方程的解在耦合处一致。6.2.2.1示例:热-结构耦合问题考虑一个热-结构耦合问题,其中结构的温度变化影响其应力状态,反之亦然。6.2.2.2代码示例importnumpyasnp

#参数设置

L=1.0#杆的长度

N=100#空间网格点数

dx=L/(N-1)

dt=0.001

E=200e9#弹性模量

nu=0.3#泊松比

alpha0=1.0#初始热导率

alpha_max=2.0#最大热导率

T=0.1#总时间

u0=np.zeros(N)#初始温度分布

v0=np.zeros(N)#初始位移分布

u0[N//2]=100#中间点的初始温度

#热导率函数

defalpha(u):

returnalpha0+(alpha_max-alpha0)*u/100

#应力-应变关系

defsigma(e,u):

returnE*(1+nu*u/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论