版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
结构力学优化算法:粒子群优化(PSO):结构优化软件工具介绍1引言1.1结构力学优化的重要性在工程设计领域,结构力学优化扮演着至关重要的角色。它不仅能够帮助工程师设计出更安全、更经济的结构,还能在满足功能需求的同时,减少材料的使用,从而降低生产成本和环境影响。结构力学优化的目标是在结构的强度、刚度、稳定性以及成本之间找到最佳平衡点,确保结构在各种载荷条件下都能保持良好的性能。1.2粒子群优化算法概述粒子群优化(ParticleSwarmOptimization,PSO)算法是一种启发式搜索算法,最初由Kennedy和Eberhart在1995年提出,灵感来源于鸟群觅食行为。PSO算法通过模拟群体中个体之间的相互作用,寻找问题的最优解。在结构力学优化中,PSO可以被用来优化结构的尺寸、形状或拓扑,以达到特定的性能指标。1.2.1粒子群优化算法原理PSO算法的核心在于粒子的更新规则。每个粒子代表一个可能的解,具有速度和位置两个属性。粒子在解空间中飞行,通过更新自己的速度和位置来寻找最优解。速度的更新受到粒子当前速度、粒子自身历史最优位置以及群体历史最优位置的影响。位置的更新则基于粒子当前的位置和更新后的速度。1.2.1.1速度更新公式v其中:-vit是粒子i在时间t的速度。-w是惯性权重,控制粒子保持当前速度的倾向。-c1和c2是学习因子,分别控制粒子向自身历史最优位置和群体历史最优位置学习的倾向。-r1和r2是在0,1区间内随机生成的数。-pbesti是粒子i的历史最优位置。-1.2.1.2位置更新公式x1.2.2粒子群优化算法示例假设我们有一个简单的结构优化问题,目标是最小化结构的重量,同时确保结构的刚度满足特定要求。我们将使用PSO算法来解决这个问题。1.2.2.1数据样例我们考虑一个由多个梁组成的结构,每个梁的尺寸(宽度和高度)是优化变量。结构的刚度由其在特定载荷下的变形量来衡量,变形量越小,刚度越高。1.2.2.2Python代码示例importnumpyasnp
importrandom
#定义PSO参数
num_particles=30
num_dimensions=2#每个粒子有2个维度,代表梁的宽度和高度
max_iter=100
w=0.7#惯性权重
c1=1.5#学习因子
c2=1.5
#初始化粒子群
positions=np.random.uniform(0,10,(num_particles,num_dimensions))
velocities=np.zeros((num_particles,num_dimensions))
pbest=positions.copy()
gbest=np.zeros(num_dimensions)
#定义适应度函数
deffitness(x):
#假设的适应度函数,实际应用中应根据具体问题定义
stiffness=1/(x[0]*x[1])#刚度与尺寸成反比
weight=x[0]+x[1]#重量与尺寸成正比
returnstiffness-weight
#主循环
fortinrange(max_iter):
#更新gbest
foriinrange(num_particles):
iffitness(positions[i])>fitness(gbest):
gbest=positions[i].copy()
#更新粒子速度和位置
foriinrange(num_particles):
r1=random.random()
r2=random.random()
velocities[i]=w*velocities[i]+c1*r1*(pbest[i]-positions[i])+c2*r2*(gbest-positions[i])
positions[i]+=velocities[i]
#更新pbest
iffitness(positions[i])>fitness(pbest[i]):
pbest[i]=positions[i].copy()
#输出最优解
print("最优解:",gbest)1.2.2.3代码解释初始化粒子群:我们创建了30个粒子,每个粒子有2个维度,代表梁的宽度和高度。粒子的初始位置和速度随机生成。适应度函数:定义了一个简单的适应度函数,它基于结构的刚度和重量。在实际应用中,适应度函数应根据具体问题来定义,可能涉及到复杂的结构力学计算。主循环:在每次迭代中,我们首先更新群体历史最优位置gbes输出最优解:在迭代结束后,我们输出群体历史最优位置gb通过这个示例,我们可以看到PSO算法如何在结构力学优化问题中寻找最优解。在实际应用中,PSO可以与更复杂的结构分析软件结合使用,以处理更真实、更复杂的问题。2粒子群优化算法基础2.1PSO算法的基本原理粒子群优化(ParticleSwarmOptimization,PSO)算法是一种启发式搜索算法,最初由Kennedy和Eberhart在1995年提出,灵感来源于鸟群觅食行为。在PSO算法中,每个解被称为一个“粒子”,这些粒子在搜索空间中飞行,通过跟踪自身和群体中的最优解来更新自己的飞行速度和位置,从而找到问题的最优解。2.1.1算法流程初始化粒子群,包括粒子的位置和速度。评估每个粒子的适应度值。更新每个粒子的个体最优位置和个人最优适应度值。更新全局最优位置和全局最优适应度值。根据更新规则调整粒子的速度和位置。重复步骤2至5,直到满足停止条件。2.2PSO算法的数学模型粒子群优化算法的数学模型主要包括粒子的位置更新和速度更新公式。2.2.1位置更新公式x其中,xit是粒子i在时间t的位置,vit+2.2.2速度更新公式v其中,w是惯性权重,c1和c2是加速常数,r1和r2是[0,1]区间内的随机数,pb2.3PSO算法的参数设置PSO算法的性能很大程度上取决于参数的设置,主要包括惯性权重w,加速常数c1和c2,以及粒子群的大小2.3.1惯性权重惯性权重w控制粒子的飞行惯性,较大的w有助于全局搜索,较小的w有助于局部搜索。通常,w的值在0.4到0.9之间。2.3.2加速常数和加速常数c1和c2分别控制粒子向个体最优和全局最优位置的飞行速度。它们的值通常在0到2之间,且2.3.3粒子群大小粒子群的大小N影响算法的搜索效率和精度。较大的N可以提高搜索的全面性,但会增加计算成本;较小的N则可能降低搜索的全面性,但计算成本较低。通常,N的值在20到50之间。2.3.4代码示例下面是一个使用Python实现的PSO算法示例,用于寻找函数fximportnumpyasnp
#定义目标函数
defobjective_function(x):
returnx**2
#PSO算法参数设置
num_particles=30
num_dimensions=1
max_iterations=100
w=0.7
c1=1.5
c2=1.5
#初始化粒子群
positions=np.random.uniform(-10,10,(num_particles,num_dimensions))
velocities=np.zeros((num_particles,num_dimensions))
pbest_positions=positions.copy()
pbest_scores=np.apply_along_axis(objective_function,1,positions)
gbest_position=pbest_positions[np.argmin(pbest_scores)]
gbest_score=np.min(pbest_scores)
#主循环
fortinrange(max_iterations):
#更新速度
r1=np.random.rand(num_particles,num_dimensions)
r2=np.random.rand(num_particles,num_dimensions)
velocities=w*velocities+c1*r1*(pbest_positions-positions)+c2*r2*(gbest_position-positions)
#更新位置
positions=positions+velocities
#评估适应度
scores=np.apply_along_axis(objective_function,1,positions)
#更新个体最优
better_scores=scores<pbest_scores
pbest_positions[better_scores]=positions[better_scores]
pbest_scores[better_scores]=scores[better_scores]
#更新全局最优
best_score_index=np.argmin(pbest_scores)
ifpbest_scores[best_score_index]<gbest_score:
gbest_position=pbest_positions[best_score_index]
gbest_score=pbest_scores[best_score_index]
print("最优解:",gbest_position,"最优值:",gbest_score)2.3.5代码解释目标函数:定义为fx参数设置:包括粒子群大小、搜索空间维度、最大迭代次数、惯性权重、加速常数。初始化粒子群:随机生成粒子的初始位置和速度,同时初始化个体最优和全局最优位置及适应度值。主循环:在每次迭代中,根据速度更新公式调整粒子的速度,然后根据位置更新公式调整粒子的位置。评估每个粒子的适应度值,更新个体最优和全局最优位置及适应度值。输出结果:在迭代结束后,输出找到的最优解和最优值。通过调整PSO算法的参数,可以使其适用于不同类型的优化问题,包括结构力学优化。在结构力学优化中,粒子的位置可以代表结构设计参数,适应度值可以代表结构的性能指标,如重量、成本或应力等。3结构优化中的PSO应用3.1PSO在结构尺寸优化中的应用粒子群优化(PSO)算法在结构尺寸优化中扮演着重要角色。尺寸优化的目标是确定结构中各部件的最佳尺寸,以达到特定的性能指标,如最小化结构重量或成本,同时满足强度、刚度等约束条件。PSO算法通过模拟鸟群觅食行为,寻找最优解。3.1.1示例:桥梁尺寸优化假设我们有一个简化的桥梁模型,需要优化其梁的宽度和高度。我们使用PSO算法来寻找在满足强度和刚度约束下的最小重量配置。importnumpyasnp
frompyswarmimportpso
#定义目标函数:计算桥梁重量
defbridge_weight(x):
width,height=x
#假设桥梁长度为10m,材料密度为7850kg/m^3
return10*width*height*7850
#定义约束函数:检查强度和刚度约束
defbridge_constraints(x):
width,height=x
#强度约束:最小厚度为0.1m
g1=width-0.1
#刚度约束:最小高度为0.5m
g2=height-0.5
return[g1,g2]
#PSO参数设置
lb=[0.1,0.5]#下限
ub=[2.0,3.0]#上限
xopt,fopt=pso(bridge_weight,lb,ub,f_ieqcons=bridge_constraints)
print("最优宽度:",xopt[0])
print("最优高度:",xopt[1])
print("最小重量:",fopt)此代码示例中,我们定义了桥梁重量的目标函数和强度、刚度的约束函数。通过调用pso函数,设置参数范围,找到满足约束条件下的最小重量配置。3.2PSO在结构形状优化中的应用形状优化关注于结构几何形状的优化,以提高结构性能。PSO算法可以有效地搜索形状参数空间,找到最优的形状配置。3.2.1示例:机翼形状优化考虑一个机翼形状优化问题,目标是最小化阻力,同时保持足够的升力。我们使用PSO算法来优化机翼的前缘半径和后缘厚度。importnumpyasnp
frompyswarmimportpso
#定义目标函数:计算阻力
defwing_drag(x):
radius,thickness=x
#假设升力系数为0.5,空气密度为1.225kg/m^3,速度为100m/s
#阻力公式简化为:D=0.5*rho*v^2*S*Cd
#其中Cd与前缘半径和后缘厚度有关
Cd=0.02+0.01*(radius+thickness)
return0.5*1.225*100**2*10*Cd
#定义约束函数:检查升力约束
defwing_constraints(x):
radius,thickness=x
#升力约束:最小升力系数为0.5
Cl=0.5+0.05*(radius+thickness)
returnCl-0.5
#PSO参数设置
lb=[0.1,0.1]#下限
ub=[1.0,0.5]#上限
xopt,fopt=pso(wing_drag,lb,ub,f_ieqcons=wing_constraints)
print("最优前缘半径:",xopt[0])
print("最优后缘厚度:",xopt[1])
print("最小阻力:",fopt)在这个示例中,我们定义了阻力计算的目标函数和升力约束函数。通过PSO算法,我们找到在满足升力约束下的最小阻力配置。3.3PSO在结构拓扑优化中的应用拓扑优化涉及结构内部材料分布的优化,以达到最佳性能。PSO算法可以用于探索复杂的拓扑空间,找到最优的材料分布方案。3.3.1示例:梁的拓扑优化假设我们有一根梁,需要优化其内部材料分布,以最小化在特定载荷下的变形。我们使用PSO算法来确定梁内部材料的最优分布。importnumpyasnp
frompyswarmimportpso
#定义目标函数:计算变形
defbeam_deflection(x):
#x表示梁内部材料分布的二进制向量,1表示材料存在,0表示材料不存在
#假设梁的长度为1m,宽度为0.1m,高度为0.1m,材料弹性模量为200GPa
#变形公式简化为:delta=F*L^3/(3*E*I)
#其中I与材料分布有关
I=np.sum(x)*0.1**3/12
return1000*1**3/(3*200e9*I)
#定义约束函数:检查材料体积约束
defbeam_constraints(x):
#材料体积约束:最大体积为0.01m^3
volume=np.sum(x)*0.1**3
return0.01-volume
#PSO参数设置
lb=np.zeros(10)#下限
ub=np.ones(10)#上限
xopt,fopt=pso(beam_deflection,lb,ub,f_ieqcons=beam_constraints)
print("最优材料分布:",xopt)
print("最小变形:",fopt)在这个示例中,我们定义了变形计算的目标函数和材料体积约束函数。通过PSO算法,我们找到在满足材料体积约束下的最小变形配置。以上示例展示了PSO算法在结构尺寸、形状和拓扑优化中的应用。通过调整算法参数和优化目标,PSO可以广泛应用于各种结构优化问题中。4结构优化软件工具4.1常用结构优化软件介绍在结构力学领域,优化算法如粒子群优化(PSO)被广泛应用于结构设计的优化过程中。以下是一些常用的结构优化软件,它们集成了PSO算法,以提高结构的效率和性能:ANSYS-ANSYS是一款全面的工程仿真软件,它提供了多种优化工具,包括PSO算法,用于结构优化、热优化、流体动力学优化等。OptiStruct-OptiStruct是Altair公司的一款优化软件,特别适用于结构优化,包括拓扑优化、形状优化和尺寸优化。PSO算法在其中用于寻找最佳的结构设计。Isight-Isight是另一款由Altair提供的多学科优化和仿真环境,它支持PSO等优化算法,用于结构和其他工程领域的优化。NASTRAN-NASTRAN是NASA开发的结构分析软件,后来商业化。它也支持PSO算法进行结构优化。4.2软件中PSO算法的实现粒子群优化(PSO)算法是一种启发式搜索算法,灵感来源于鸟群觅食行为。在结构优化中,PSO算法通过模拟粒子在搜索空间中的移动,寻找最优的结构参数。以下是在OptiStruct中实现PSO算法的一般步骤:初始化粒子群-每个粒子代表一个可能的结构设计,其位置和速度在搜索空间中随机初始化。评估粒子适应度-使用结构分析软件计算每个粒子代表的设计的适应度,这通常涉及到结构的重量、刚度、应力等指标。更新粒子位置和速度-根据粒子的适应度和群体中最佳粒子的位置,更新每个粒子的速度和位置。迭代优化-重复评估和更新过程,直到达到预设的迭代次数或适应度标准。4.2.1示例:OptiStruct中的PSO算法应用假设我们正在使用OptiStruct优化一个桥梁的结构设计,目标是最小化桥梁的重量,同时保持足够的刚度和安全系数。以下是一个简化的PSO算法实现流程:定义设计变量-设计变量可能包括桥梁的梁宽、梁高、材料类型等。设置PSO参数-包括粒子数量、最大迭代次数、惯性权重、加速常数等。编写OptiStruct脚本-使用OptiStruct的脚本语言定义PSO算法和结构分析流程。#OptiStruct脚本示例
#定义PSO算法参数
PSO_Params={
"n_particles":50,#粒子数量
"max_iter":100,#最大迭代次数
"w":0.7,#惯性权重
"c1":1.5,#认知加速常数
"c2":1.5#社会加速常数
}
#定义设计变量
Design_Variables={
"beam_width":[0.1,0.5],#梁宽范围
"beam_height":[0.1,0.5],#梁高范围
"material":["steel","concrete"]#材料类型
}
#执行PSO优化
OptiStruct.optimize(PSO_Params,Design_Variables)请注意,上述代码是示例性质的,OptiStruct并不使用Python脚本,而是有自己的专用脚本语言。此示例仅用于说明如何在软件中设置和执行PSO算法。4.3软件操作流程与案例分析4.3.1操作流程导入结构模型-在OptiStruct中导入需要优化的桥梁模型。定义优化目标和约束-设置目标函数为最小化重量,同时定义刚度和安全系数的约束。设置PSO算法参数-根据项目需求调整粒子数量、迭代次数等参数。执行优化-运行PSO算法,软件将自动进行结构分析和优化迭代。分析结果-优化完成后,分析最优设计的参数和性能指标。4.3.2案例分析假设在OptiStruct中优化后的桥梁设计如下:梁宽:0.35米梁高:0.4米材料:钢优化前后的重量对比显示,使用PSO算法后,桥梁的重量减少了15%,同时满足了刚度和安全系数的要求。这表明PSO算法在结构优化中是有效的,能够帮助工程师找到更轻、更经济的结构设计。通过上述介绍和示例,我们可以看到,粒子群优化算法在结构优化软件中扮演着重要角色,能够帮助工程师在满足结构性能要求的同时,寻找更优的设计方案。5PSO算法的高级主题5.1PSO算法的改进策略粒子群优化(PSO)算法是一种基于群体智能的优化技术,最初由Kennedy和Eberhart在1995年提出。它模拟了鸟群觅食的行为,通过粒子在搜索空间中飞行,寻找最优解。然而,标准PSO算法在解决复杂问题时可能会遇到早熟收敛、搜索效率低等问题。因此,研究者们提出了多种改进策略来增强PSO的性能。5.1.1惯性权重的动态调整惯性权重控制粒子的飞行速度,影响算法的全局搜索和局部搜索能力。动态调整惯性权重可以平衡这两者,提高算法的收敛速度和精度。5.1.2领导者学习策略在标准PSO中,每个粒子向全局最优和局部最优学习。引入领导者学习策略,可以让粒子向多个优秀粒子学习,提高搜索的多样性和效率。5.1.3混合PSO算法结合其他优化算法(如遗传算法、模拟退火等)的优点,与PSO算法混合使用,可以克服PSO的局限性,提高优化效果。5.1.4示例:动态惯性权重PSO算法假设我们有一个简单的优化问题,目标是最小化函数fximportnumpyasnp
importrandom
deff(x):
returnx**2
defpso(num_particles,num_iterations,search_space,w_min=0.4,w_max=0.9):
particles=[np.random.uniform(-search_space,search_space)for_inrange(num_particles)]
velocities=[np.random.uniform(-1,1)for_inrange(num_particles)]
personal_best=particles[:]
personal_best_fitness=[f(x)forxinparticles]
global_best=particles[np.argmin(personal_best_fitness)]
for_inrange(num_iterations):
w=w_min+(w_max-w_min)*random.random()#动态调整惯性权重
foriinrange(num_particles):
r1,r2=random.random(),random.random()
velocities[i]=w*velocities[i]+2*r1*(personal_best[i]-particles[i])+2*r2*(global_best-particles[i])
particles[i]+=velocities[i]
iff(particles[i])<personal_best_fitness[i]:
personal_best[i]=particles[i]
personal_best_fitness[i]=f(particles[i])
ifpersonal_best_fitness[i]<f(global_best):
global_best=particles[i]
returnglobal_best
#参数设置
num_particles=50
num_iterations=100
search_space=10
#运行PSO算法
best_solution=pso(num_particles,num_iterations,search_space)
print("最优解:",best_solution)5.2多目标PSO算法在多目标优化问题中,存在多个相互冲突的目标函数,需要找到一个解集,使得每个目标函数的值都尽可能好。多目标PSO算法通过引入Pareto最优概念,可以有效地处理这类问题。5.2.1示例:多目标PSO算法考虑一个具有两个目标函数的优化问题:f1x=x2importnumpyasnp
fromscipy.optimizeimportminimize
defobjectives(x):
return[x**2,(x-2)**2]
defpso_multi(num_particles,num_iterations,search_space):
particles=[np.random.uniform(-search_space,search_space)for_inrange(num_particles)]
personal_best=particles[:]
personal_best_fitness=[objectives(x)forxinparticles]
global_best=personal_best_fitness[:]
for_inrange(num_iterations):
foriinrange(num_particles):
r1,r2=random.random(),random.random()
velocities=[r1*(personal_best[i]-particles[i]),r2*(global_best[i]-particles[i])]
particles[i]+=sum(velocities)
new_fitness=objectives(particles[i])
ifnew_fitness[0]<personal_best_fitness[i][0]andnew_fitness[1]<personal_best_fitness[i][1]:
personal_best[i]=particles[i]
personal_best_fitness[i]=new_fitness
ifnew_fitness[0]<global_best[i][0]andnew_fitness[1]<global_best[i][1]:
global_best[i]=new_fitness
returnglobal_best
#参数设置
num_particles=50
num_iterations=100
search_space=10
#运行多目标PSO算法
best_solutions=pso_multi(num_particles,num_iterations,search_space)
print("Pareto最优解集:",best_solutions)5.3PSO算法与其他优化方法的比较PSO算法与遗传算法(GA)、差分进化算法(DE)、模拟退火算法(SA)等其他优化方法相比,具有以下特点:易于实现:PSO算法的实现相对简单,参数较少,易于理解和编程。全局搜索能力:PSO算法通过粒子之间的信息交流,具有较强的全局搜索能力。收敛速度:在某些问题上,PSO算法的收敛速度可能比GA、DE等算法更快。局部搜索能力:PSO算法在局部搜索能力上可能不如SA算法,后者通过模拟退火过程,可以跳出局部最优。5.3.1示例:PSO与GA的比较假设我们有一个简单的优化问题,目标是最小化函数fximportnumpyasnp
importrandom
fromdeapimportbase,creator,tools,algorithms
#PSO算法
defpso(num_particles,num_iterations,search_space):
particles=[np.random.uniform(-search_space,search_space)for_inrange(num_particles)]
velocities=[np.random.uniform(-1,1)for_inrange(num_particles)]
personal_best=particles[:]
personal_best_fitness=[f(x)forxinparticles]
global_best=particles[np.argmin(personal_best_fitness)]
for_inrange(num_iterations):
w=0.7#固定惯性权重
foriinrange(num_particles):
r1,r2=random.random(),random.random()
velocities[i]=w*velocities[i]+2*r1*(personal_best[i]-particles[i])+2*r2*(global_best-particles[i])
particles[i]+=velocities[i]
iff(particles[i])<personal_best_fitness[i]:
personal_best[i]=particles[i]
personal_best_fitness[i]=f(particles[i])
ifpersonal_best_fitness[i]<f(global_best):
global_best=particles[i]
returnglobal_best
#遗传算法
creator.create("FitnessMin",base.Fitness,weights=(-1.0,))
creator.create("Individual",list,fitness=creator.FitnessMin)
toolbox=base.Toolbox()
toolbox.register("attr_float",random.uniform,-10,10)
toolbox.register("individual",tools.initRepeat,creator.Individual,toolbox.attr_float,1)
toolbox.register("population",tools.initRepeat,list,toolbox.individual)
defevaluate(individual):
returnf(individual[0]),
toolbox.register("evaluate",evaluate)
toolbox.register("mate",tools.cxTwoPoint)
toolbox.register("mutate",tools.mutGaussian,mu=0,sigma=1,indpb=0.2)
toolbox.register("select",tools.selTournament,tournsize=3)
#参数设置
num_particles=50
num_iterations=100
search_space=10
#运行PSO算法
best_solution_pso=pso(num_particles,num_iterations,search_space)
print("PSO最优解:",best_solution_pso)
#运行GA算法
pop=toolbox.population(n=num_particles)
hof=tools.HallOfFame(1)
stats=tools.Statistics(lambdaind:ind.fitness.values)
stats.register("avg",np.mean)
stats.register("std",np.std)
stats.register("min",np.min)
stats.register("max",np.max)
pop,logbook=algorithms.eaSimple(pop,toolbox,cxpb=0.5,mutpb=0.2,ngen=num_iterations,stats=stats,halloffame=hof,verbose=True)
best_solution_ga=hof[0][0]
print("GA最优解:",best_solution_ga)通过比较PSO和GA算法在相同问题上的表现,我们可以观察到它们的收敛速度、搜索精度等差异,从而选择更适合特定问题的优化方法。6结论与未来方向6.1PSO算法在结构优化中的优势与局限粒子群优化(PSO)算法是一种启发式搜索算法,最初由Kennedy和Eberhart在1995年提出,灵感来源于鸟群觅食行为。在结构优化领域,PSO算法因其并行搜索能力和易于实现的特点,被广泛应用于解决复杂优化问题。6.1.1优势并行搜索能力:PSO算法能够同时在多个方向上进行搜索,这使得它在处理高维和复杂问题时具有较高的效率。易于实现:PSO算法的实现相对简单,不需要复杂的数学知识,这使得它在工程应用中非常受欢迎。全局优化能力:通过粒子之间的信息共享,PSO算法能够跳出局部最优解,寻找全局最优解。参
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗新技术结题
- 职场心态培训
- 年产xxx生物破坏性塑料项目建议书
- 年产xx数字程控交换设备项目建议书
- 年产xxx松木实木门项目可行性研究报告(项目规划)
- 年产xxx回转缸项目可行性研究报告(立项备案)
- 年产xx再生海绵扶手项目建议书
- 2023年耐高温超轻硅酸钙隔热保湿材料资金筹措计划书
- 高三地理一轮复习 课件 世界的气温和降水
- 地质构造与地貌、地质剖面图判读课件高三地理一轮复习
- 核安全工程师-核安全综合知识-辐射防护基础-辐射防护剂量限值
- 音乐治疗学基础理论
- 小学二年级期中家长会课件
- 第六届大学生化学实验技能竞赛初赛笔试试题
- 质量通病防治施工措施及质量通病防治措施
- 英语作业纸打印版
- 静脉留置针操作常见并发症预防及处理课件
- LTE与5G移动通信技术PPT完整全套教学课件
- 军事理论(中北大学版)学习通超星课后章节答案期末考试题库2023年
- 高中文言文整理使动和意动用法-课件
- 多维自我体像关系调查问卷(MBSRQ)中文修订版及评分方法
评论
0/150
提交评论