




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上程序結(jié)構(gòu)力學(xué)大作業(yè)結(jié)81 孫玉進(jìn)該程序可計算任意平面結(jié)構(gòu)任意階頻率(包括重頻),以及任意階振型(包括重頻對應(yīng)正交振型)。計算時,振型不包括不包括單元固端型振型。!*module NumKind!*implicit noneinteger (kind(1),parameter : ikind = kind(1), rkind = kind(0.D0)real (rkind),parameter : Zero = 0._rkind, One = 1._rkind, Two = 2._rkind, &Three= 3._rkind, Four = 4._rkind, Fiv
2、e = 5._rkind, &Six = 6._rkind, Seven= 7._rkind, Eight = 8._rkind, &Nine = 9._rkind, Ten =10._rkind, Twelve=12._rkindend module NumKind!*module TypeDef!*use NumKindimplicit nonetype : typ_Jointreal (rkind) : x,yinteger (ikind) : GDOF(3)end type typ_Jointtype : typ_Elementinteger (ikind) : JointNo(2),
3、GlbDOF(6)real (rkind) : Length,CosA,SinA,EI,EA,massend type typ_Elementtype : typ_JointLoadinteger (ikind) : JointNo,LodDOFreal (rkind) : LodValend type typ_JointLoadtype : typ_ElemLoadinteger (ikind) :ElemNo,Indxreal (rkind) : Pos,LodValend type typ_ElemLoadcontains!=subroutine SetElemProp (Elem, J
4、oint)!=type (typ_Element),intent(in out) : Elem(:)type (typ_Joint),intent(in) : Joint(:)integer(ikind):ie,NElemreal(rkind):x1,x2,y1,y2NElem=size(Elem,dim=1)do ie=1,NElemx1=Joint(Elem(ie)%JointNo(1)%xy1=Joint(Elem(ie)%JointNo(1)%yx2=Joint(Elem(ie)%JointNo(2)%xy2=Joint(Elem(ie)%JointNo(2)%yElem(ie)%Le
5、ngth=sqrt(x1-x2)*2+(y1-y2)*2)Elem(ie)%CosA=(x2-x1)/Elem(ie)%LengthElem(ie)%SinA=(y2-y1)/Elem(ie)%LengthElem(ie)%GlbDOF(1:3)=Joint(Elem(ie)%JointNo(1)%GDOF(:)Elem(ie)%GlbDOF(4:6)=Joint(Elem(ie)%JointNo(2)%GDOF(:)end doreturnend subroutine SetElemProp!=subroutine TransMatrix (ET, CosA,SinA)!=real(rkin
6、d),intent(out) : ET(:,:)real(rkind),intent(in) : CosA,SinA! ET could be 2x2, 3x3 or 6x6 depending size(ET)ET = ZeroET(1,1:2) = (/ CosA, SinA /)ET(2,1:2) = (/-SinA, CosA /)if (size(ET,1) 2) ET(3,3) = Oneif (size(ET,1) 3) ET(4:6,4:6) = ET(1:3,1:3)returnend subroutine TransMatrixend module TypeDef!*mod
7、ule BandMat!*use NumKinduse TypeDef,only : typ_Element ! 僅用該模塊中的typ_Elementimplicit noneprivate ! 默認(rèn)所有的數(shù)據(jù)和過程為私有,增強(qiáng)封裝性public : SetMatBand, DelMatBand, VarBandSolvtype,public : typ_Kcolreal (rkind),pointer : row(:)end type typ_Kcolcontains!=subroutine SetMatBand (Kcol, Elem)!=! .6-4-2type (typ_KCol),i
8、ntent(in out) : Kcol(:)type (typ_Element),intent(in) : Elem(:)integer (ikind) : minDOF,ELocVec(6)integer (ikind) : ie,j,NGlbDOF,NEleminteger (ikind) : row1(size(Kcol,dim=1)! row1是自動數(shù)組,子程序結(jié)束后將自動釋放內(nèi)存空間NGlbDOF = size(Kcol,1)NElem = size(Elem,1)row1 = NGlbDOF ! 先設(shè)始行碼為大數(shù)! 確定各列始行碼,放在數(shù)組row1(:)中do ie=1,NEle
9、mELocVec = Elem(ie)%GlbDOFminDOF = minval (ELocVec,mask = ELocVec 0)where (ELocVec 0)row1(ELocVec) = min(row1(ELocVec), minDOF)end whereend do! 為各列的半帶寬分配空間并初始化do j=1,NGlbDOFallocate ( Kcol(j)%row(row1(j):j) )Kcol(j)%row = Zero ! 清零end doreturnend subroutine SetMatBand!=subroutine DelMatBand (Kcol)!=
10、!.6-5-5type (typ_KCol), intent(in out) : Kcol(:)integer (ikind) : j,NGlbDOFNGlbDOF = size(Kcol,1)do j=1,NGlbDOFdeallocate ( Kcol(j)%row )end doreturnend subroutine DelMatBand!=subroutine VarBandSolv (Disp, Kcol,GLoad)!=type (typ_KCol), intent(in out) : Kcol(:)real (rkind), intent(out) : Disp(:)real
11、(rkind), intent(in) : GLoad(:)integer (ikind) : i,j,k,row1j,row_1,NColreal(rkind) : Diag(size(Kcol,dim=1)real(rkind) :s!.6-5-2NCol=size(Kcol,1)Diag(1:NCol)=(/(Kcol(j)%row(j),j=1,NCol)/)do j=2,NColrow1j=lbound(Kcol(j)%row,1)do i=row1j,j-1row_1=max(row1j,lbound(Kcol(i)%row,1)k=i-1s= sum(Diag(row_1:k)*
12、Kcol(i)%row(row_1:k)*Kcol(j)%row(row_1:k)Kcol(j)%row(i)=(Kcol(j)%row(i)-s)/Diag(i)end dos=sum(Diag(row1j:j-1)*Kcol(j)%row(row1j:j-1)*2)Diag(j)=Diag(j)-send doDisp(:) = GLoad(:)!. 6-5-3節(jié)的代碼:其中GP換為Disp do j=2,NColrow1j=lbound(Kcol(j)%row,1)Disp(j)=Disp(j)-sum(Kcol(j)%row(row1j:j-1)*Disp(row1j:j-1)end
13、do!. 6-5-4節(jié)的代碼:其中GP換為Disp Disp(:)=Disp(:)/Diag(:)do j=NCol,1,-1row1j=lbound(Kcol(j)%row,1)Disp(row1j:j-1)=Disp(row1j:j-1)-Disp(j)*Kcol(j)%row(row1j:j-1)end doreturnend subroutine VarBandSolvend module BandMat!*module DispMethod!*use NumKinduse TypeDefuse BandMatimplicit nonecontains!=subroutine Solv
14、eDisp(Disp,Elem,Joint,JLoad,ELoad)!=real(rkind),intent(out) : Disp(:)type(typ_Element),intent(in) : Elem(:)type(typ_Joint) ,intent(in) : Joint(:)type(typ_JointLoad),intent(in) : JLoad(:)type(typ_Elemload),intent(in) : ELoad(:)type(typ_Kcol),allocatable : Kcol(:) real(rkind),allocatable : GLoad(:) in
15、teger(ikind) : NGlbDOFNGlbDOF=size(Disp,dim=1)allocate(GLoad(NGlbDOF)allocate(Kcol(NGlbDOF)call SetMatBand(Kcol,Elem)call GLoadVec(GLoad,Elem,JLoad,ELoad,Joint)call GStifMat(Kcol,Elem)call VarBandSolv(Disp,Kcol,GLoad)call DelMatBand(Kcol)deallocate(GLoad) returnend subroutine SolveDisp!=subroutine G
16、StifMat(Kcol,Elem)!=type(typ_Kcol),intent(in out) : Kcol(:)type(typ_Element),intent(in) : Elem(:)! .6-4-3integer (ikind) : ie,j,JGDOF,NElemreal (rkind) : EK(6,6),ET(6,6)integer (ikind) : ELocVec(6)NElem=size(Elem,1)do ie=1,NElemcall EStifMat (EK,Elem(ie)%Length,Elem(ie)%EI,Elem(ie)%EA)call TransMatr
17、ix(ET,Elem(ie)%CosA,Elem(ie)%SinA)EK=matmul(transpose(ET),matmul(EK,ET)ELocVec=Elem(ie)%GlbDOFdo j=1,6JGDOF=ELocVec(j)if(JGDOF=0) cyclewhere (ELocVec0)Kcol(JGDOF)%row(ELocVec)=Kcol(JGDOF)%row(ELocVec)+EK(:,j)end whereend doend doreturnend subroutine GStifMat!=subroutine GLoadVec(GLoad,Elem,JLoad,ELo
18、ad,Joint)!=real (rkind),intent(out) : GLoad(:)type (typ_Element), intent(in) : Elem(:)type (typ_Joint), intent(in) : Joint(:)type (typ_JointLoad), intent(in) :JLoad(:)type (typ_ElemLoad), intent(in) :ELoad(:)integer (ikind) : ie,NJLoad,NELoadreal (rkind) : F0(6),ET(6,6)NJLoad=size(JLoad,dim=1)NELoad
19、=size(ELoad,dim=1)GLoad(:)=Zerodo ie=1,NJLoadGLoad(Joint(JLoad(ie)%JointNo)%GDOF(JLoad(ie)%LodDOF)=GLoad(Joint(JLoad(ie)%JointNo)%GDOF(JLoad(ie)%LodDOF)+JLoad(ie)%LodValend dodo ie=1,NELoadcall EFixendF (F0, ELoad(ie)%Indx,ELoad(ie)%Pos,ELoad(ie)%LodVal,Elem(ELoad(ie)%ElemNo)call TransMatrix(ET,Elem
20、(ELoad(ie)%ElemNo)%CosA,Elem(ELoad(ie)%ElemNo)%SinA)where (Elem(ELoad(ie)%ElemNo)%GlbDOF0)GLoad(Elem(ELoad(ie)%ElemNo)%GlbDOF)=GLoad(Elem(ELoad(ie)%ElemNo)%GlbDOF)-matmul(transpose(ET),F0(:)end where end doreturnend subroutine GLoadVec!=subroutine EStifMat(EK,Elen,EI,EA)!=real(rkind),intent(out) : E
21、K(:,:)real(rkind),intent(in) : Elen,EI,EAinteger(ikind) : i,jEK=ZeroEK(1,1) = EA/ElenEK(1,4) = -EA/ElenEK(2,2) = Twelve*EI/Elen*ThreeEK(2,3) = Six*EI/Elen*TwoEK(2,5) = -Twelve*EI/Elen*ThreeEK(2,6) = Six*EI/Elen*TwoEK(3,3) = Four*EI/ElenEK(3,5) = -Six*EI/Elen*TwoEK(3,6) = Two*EI/ElenEK(4,4) = EA/Elen
22、Ek(5,5) = Twelve*EI/Elen*ThreeEK(5,6) = -Six*EI/Elen*TwoEK(6,6) = Four*EI/Elendo j=1,6do i=j+1,6EK(i,j)=EK(j,i)end doend doreturnend subroutine EStifMat!=subroutine EFixendF(F0,Indx,a,q,Elem)!=real(rkind), intent(out): F0(:)real (rkind), intent(in) :a,qinteger (ikind), intent(in): Indxtype (typ_Elem
23、ent), intent(in) : Elemreal :ll=Elem%lengthselect case (Indx)case(1)F0(1:3)=(/Zero,-q*(a*l)/Two*(Two-Two*a*Two+a*Three),-q*(a*l)*Two/Twelve*(Six-Eight*a+Three*a*Two)/)F0(4:6)=(/Zero,-q*(a*l)*a*Two/Two*(Two-a),q*(a*l)*Two*a/Twelve*(Four-Three*a)/)case(2)F0(1:3)=(/Zero,-q*(One-Two*a+a*Two)*(One+Two*a)
24、,-q*(a*l)*(One-Two*a+a*Two)/)F0(4:6)=(/Zero,-q*a*Two*(Three-Two*a),q*a*Two*(One-a)*l/)case(3)if(aOne/Two)thenF0(1)=Elem%EA*q/lF0(4)=-F0(1)elseF0(1)=-Elem%EA*q/lF0(4)=-F0(1)end ifF0(2) = ZeroF0(3) = ZeroF0(5) = ZeroF0(6) = Zero case(4)if(a1)thenMFreq=MFreq-1Freq(k-FreqStart+1)=Freq(k-FreqStart)cyclee
25、nd ifif(kFreqStart) freq_l=freq(k-FreqStart)docall CJ0(J01,freq_l,Elem)call CJk(Jk,freq_l,Kcol,Elem)J_l=J01+Jkif(J_l=k) exitfreq_l=freq_ufreq_u=freq_u*Twoend dodofreqm=(freq_l+freq_u)/Twocall CJ0(J0,freqm,Elem)call CJk(Jk,freqm,Kcol,Elem)Jm=J0+Jkif(Jm=k)thenfreq_u=freqmelsefreq_l=freqmend ifif(freq_
26、u-freq_l)Tol*(One+freq_l) thencall CJ0(J0,freq_u,Elem)call CJk(Jk,freq_u,Kcol,Elem)Jm=J0+JkMFreq=Jm-k+1exitend ifend doFreq(k+1-FreqStart)=(freq_u+freq_l)/2end do returnend subroutine GetFreq!-subroutine Mode(Elem,Kcol,FreqStart,NFreq,Tol)!獲取振型!-type(typ_Element),intent(in) :Elem(:)type(typ_Kcol) ,i
27、ntent(in out) :Kcol(:)real(rkind) ,intent(in) :Tol integer(ikind) ,intent(in) :FreqStart,NFreqreal(rkind) ,allocatable :det0(:),det(:),GLoad(:),diag(:),GLoad2(:),Freq(:),Mdet(:,:) !記錄重頻振型integer(ikind) ,allocatable :MFreq(:)!記錄重頻已出現(xiàn)次數(shù)real(rkind) :de,s,freq0,arf,EDisp(6)integer(ikind) :NGlbDOF,NElem,
28、i,j,row1j,row_1,NCol,k,t,rNGlbDOF=size(Kcol,1)NCol=size(Kcol,1)NElem=size(Elem,1)r=min(NFreq,NGlbDOF)allocate(det0(NGlbDOF)allocate(det(NGlbDOF)allocate(GLoad(NGlbDOF)allocate(diag(NGlbDOF)allocate(MFreq(NFreq+1)allocate(GLoad2(NGlbDOF)allocate(Freq(NFreq)MFreq=Zerocall GetFreq(Freq,Elem,Kcol,FreqSt
29、art,NFreq,Tol)do i=1,NFreq-1 !計算重頻對應(yīng)的已出現(xiàn)次數(shù)if(Freq(i+1)-Freq(i)0) then !重頻振型正交化do t=1,MFreq(k)call EGLoadVec(GLoad,Elem,det,Freq(k)call EGLoadVec(GLoad2,Elem,Mdet(1:NGlbDOF,t),Freq(k)arf=dot_product(Mdet(1:NGlbDOF,t),GLoad)/dot_product(Mdet(1:NGlbDOF,t),GLoad2)det=det-Mdet(1:NGlbDOF,t)*arfend doend i
30、f!逆冪迭代call SetMatBand(Kcol,Elem)call GStifMat(Kcol,Elem,Freq(k)diag(:)=(/(Kcol(j)%row(j),j=1,NCol)/)do j=2,NColrow1j=lbound(Kcol(j)%row,1)do i=row1j,j-1row_1=max(row1j,lbound(Kcol(i)%row,1)s=sum(diag(row_1:i-1)*Kcol(i)%row(row_1:i-1)*Kcol(j)%row(row_1:i-1)Kcol(j)%row(i)=(Kcol(j)%row(i)-s)/diag(i)end
31、 dos=sum(diag(row1j:j-1)*Kcol(j)%row(row1j:j-1)*2)diag(j)=diag(j)-send do do j=2,NColrow1j=lbound(Kcol(j)%row,1)GLoad(j)=GLoad(j)-sum(Kcol(j)%row(row1j:j-1)*GLoad(row1j:j-1)end doGLoad(:)=GLoad(:)/Diag(:)do j=NCol,1,-1row1j=lbound(Kcol(j)%row,1)GLoad(row1j:j-1)=GLoad(row1j:j-1)-GLoad(j)*Kcol(j)%row(
32、row1j:j-1)end dode=GLoad(1)do i=2,NGlbDOF !標(biāo)準(zhǔn)化if(abs(GLoad(i)abs(de) de=GLoad(i) end dodo i=1,NGlbDOFGLoad(i)=GLoad(i)/deend doif(dot_product(GLoad-det0,GLoad-det0)0) Mdet(1:NGlbDOF,MFreq(k+1)=GLoad !記錄重頻振型,用于后續(xù)正交化exitend ifdet0=GLoadfreq0=Freq(k)Freq(k)=Freq(k)-1/de !牛頓外插頻率if(Freq(k)freq0+Tol*(One+
33、freq0) Freq(k)=freq0 !牛頓導(dǎo)護(hù)if(Freq(k)freq0-Tol*(One+freq0) Freq(k)=freq0end dowrite(8,*) Freq(k),0 do t=1,NElem call ElemDisp2(EDisp,GLoad,Elem(t)write(8,*) EDisp end doend doEDisp=0do k=r+1,NFreqwrite(8,*) Freq(k),0do t=1,NElemwrite(8,*) EDispend doend dodeallocate(diag)deallocate(det0)deallocate(GL
34、oad)call DelMatBand (Kcol)returnend subroutine Mode!計算單元固端頻率數(shù)subroutine CJ0(J0,freq,Elem)integer(ikind) ,intent(out) :J0real(rkind) ,intent(in) :freqtype(typ_Element) ,intent(in) :Elem(:)integer(ikind) :NElem,Ja,Jb,i,jreal(rkind) :nu,lambda,sgNElem=size(Elem,dim=1)J0=0do i=1,NElemnu = freq*Elem(i)%L
35、ength*sqrt(Elem(i)%mass/Elem(i)%EA)Ja = int(nu/Pi)lambda= Elem(i)%Length*sqrt(sqrt(freq*2*Elem(i)%mass/Elem(i)%EI)sg = sign(One,One-cosh(lambda)*cos(lambda)j = int(lambda/Pi)Jb = j-(1-(-1)*j*sg)/2J0 = J0+Ja+Jbend doreturnend subroutine CJ0!計算Jksubroutine CJk(Jk,freq,Kcol,Elem)integer(ikind) ,intent(
36、out) :Jkreal(rkind) ,intent(in) :freqtype(typ_Kcol) ,intent(in out) :Kcol(:)type(typ_Element),intent(in) :Elem(:)integer(ikind) :NGlbDOFreal(rkind),allocatable :diag(:)integer(ikind) :i,j,row1j,row_1,NColreal(rkind) :sNGlbDOF=size(Kcol,1)allocate(diag(NGlbDOF)call SetMatBand(Kcol,Elem)call GStifMat(
37、Kcol,Elem,freq)NCol=size(Kcol,1)diag(:)=(/(Kcol(j)%row(j),j=1,NCol)/)do j=2,NColrow1j=lbound(Kcol(j)%row,1)do i=row1j,j-1row_1=max(row1j,lbound(Kcol(i)%row,1)s=sum(diag(row_1:i-1)*Kcol(i)%row(row_1:i-1)*Kcol(j)%row(row_1:i-1)Kcol(j)%row(i)=(Kcol(j)%row(i)-s)/diag(i)end dos=sum(diag(row1j:j-1)*Kcol(j
38、)%row(row1j:j-1)*2)diag(j)=diag(j)-send do Jk=count(mask=diagZero,dim=1)deallocate(diag)returnend subroutine CJk!整體動力剛度矩陣subroutine GStifMat(Kcol,Elem,freq)type(typ_Kcol),intent(in out) : Kcol(:)type(typ_Element),intent(in) : Elem(:)real(rkind),intent(in) : freqinteger(ikind) : ie,j,JGDOF,NElemreal(
39、rkind) : EK(6,6),ET(6,6)integer(ikind) : ELocVec(6)NElem=size(Elem,1)do ie=1,NElemcall EStifMat(EK,Elem,ie,freq)call TransMatrix(ET,Elem(ie)%CosA,Elem(ie)%SinA)EK=matmul(transpose(ET),matmul(EK,ET)ELocVec=Elem(ie)%GlbDOFdo j=1,6JGDOF=ELocVec(j)if(JGDOF=0) cyclewhere (ELocVec0)Kcol(JGDOF)%row(ELocVec
40、)=Kcol(JGDOF)%row(ELocVec)+EK(:,j)end whereend doend doreturnend subroutine GStifMat!等效整體荷載向量,用于逆冪迭代!=subroutine EGLoadVec(GLoad,Elem,det,freq)!=real (rkind),intent(out) : GLoad(:)type (typ_Element), intent(in) : Elem(:)real (rkind),intent(in) : freqreal (rkind),intent(in) : det(:)integer (ikind) :
41、ie,NElem,ireal (rkind) : F0(6),EK(6,6)GLoad(:)=ZeroNElem=size(Elem,1)do ie=1,NElemF0=Zerodo i=1,6if(Elem(ie)%GlbDOF(i)0) F0(i)=det(Elem(ie)%GlbDOF(i)end docall DEStifMat(EK,Elem,ie,freq)where (Elem(ie)%GlbDOF0)GLoad(Elem(ie)%GlbDOF)=GLoad(Elem(ie)%GlbDOF)+matmul(EK,F0)end where end doreturnend subro
42、utine EGLoadVec!單元動力剛度矩陣!-subroutine EStifMat(EK,Elem,ie,freq)!-real(rkind),intent(out) :EK(6,6)type(typ_Element),intent(in) :Elem(:)integer(ikind),intent(in) :iereal(rkind),intent(in) :freqreal(rkind) :EI,EA,Length,mreal(rkind) :critreal(rkind) :B1,B2,T,R,Q,H,S,Creal(rkind) :nu,lambdainteger(ikind)
43、 :i,jEK = Zero EI = Elem(ie)%EIEA = Elem(ie)%EALength= Elem(ie)%Lengthm = Elem(ie)%massnu = freq*Length*sqrt(m/EA)lambda= Length*(freq*2*m/EI)*0.25crit = One-cosh(lambda)*cos(lambda)B1=nu/tan(nu)B2=nu/sin(nu)T = lambda*3*(sin(lambda)*cosh(lambda)+cos(lambda)*sinh(lambda)/critR = lambda*3*(sin(lambda
44、)+sinh(lambda)/critQ = lambda*2*(sin(lambda)*sinh(lambda)/critH = lambda*2*(cosh(lambda)-cos(lambda)/critS = lambda*(sin(lambda)*cosh(lambda)-cos(lambda)*sinh(lambda)/critC = lambda*(sinh(lambda)-sin(lambda)/critEK(1,1) = B1*EA/LengthEK(1,4) = -B2*EA/LengthEK(2,2) = T*EI/Length*3EK(2,3) = Q*EI/Lengt
45、h*2EK(2,5) = -R*EI/Length*3EK(2,6) = H*EI/Length*2EK(3,3) = S*EI/LengthEK(3,5) = -H*EI/Length*2EK(3,6) = C*EI/LengthEK(4,4) = B1*EA/LengthEk(5,5) = T*EI/Length*3EK(5,6) = -Q*EI/Length*2EK(6,6) = S*EI/Lengthdo j=1,6do i=j+1,6EK(i,j)=EK(j,i)end doend doreturnend subroutine EStifMat!單元動力剛度矩陣的導(dǎo)數(shù)矩陣!-subr
46、outine DEStifMat(EK,Elem,ie,freq)!-real(rkind),intent(out) :EK(6,6)type(typ_Element),intent(in) :Elem(:)integer(ikind),intent(in) :iereal(rkind),intent(in) :freqreal(rkind) :EI,EA,Length,mreal(rkind) :critreal(rkind) :T,R,Q,H,S,C,B11,B21,T1,R1,Q1,H1,S1,C1real(rkind) :nu,lambdainteger(ikind) :i,jEK = Zero EI = Elem(ie)%EIEA = Elem(ie)%EALength= Elem(ie)%Lengthm = Elem(ie)%massnu = freq*Length*sqrt(m/EA)lambda= Length*(freq*2*m/EI)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 特斯拉汽車新技術(shù)專題研究報告
- 跳水臺項目可行性分析報告(模板參考范文)
- 以讀促寫以寫帶讀:高中英語寫作課程中讀寫結(jié)合的深度探究與實踐
- 2025-2030年中國實木階梯椅項目投資可行性研究分析報告
- “國際文化旅游愛好者”成年人國際文化旅游商業(yè)計劃書
- 品牌名 連鎖餐飲成長期商業(yè)計劃書:連鎖擴(kuò)張新戰(zhàn)略
- 2025年中國綃紡針布行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年荷仁豆項目節(jié)能評估報告(節(jié)能專)
- 嬰用型清潔濕巾項目投資可行性研究分析報告(2024-2030版)
- 附錄A 生產(chǎn)安全事故風(fēng)險評估報告
- 樹木砍伐合同簡單協(xié)議書
- T/CERDS 1-2021企業(yè)高質(zhì)量發(fā)展評價指標(biāo)
- 2025農(nóng)發(fā)銀行筆試題庫及答案
- 湖北省黃岡市黃梅實驗中學(xué)2025屆數(shù)學(xué)八下期末統(tǒng)考試題含解析
- 2025屆上海市閔行區(qū)七下數(shù)學(xué)期末學(xué)業(yè)水平測試模擬試題含解析
- 安全大講堂教學(xué)課件
- GB/T 18487.4-2025電動汽車傳導(dǎo)充放電系統(tǒng)第4部分:車輛對外放電要求
- 靜電放電(ESD)及其防護(hù)措施培訓(xùn)課件
- 離婚不離家協(xié)議書
- 社區(qū)干事考試試題及答案
- 2025年建筑工程管理考試試題及答案
評論
0/150
提交評論