chenyanru 发表于 2007-11-7 14:13

把扣索分成节段后,出现位移过大的错误(apdl)

做了一个拱桥的模型,上面用扣索模拟施工阶段。当把扣索作为一个单元计算时可以计算,但是当我把扣索分成若干段然后赋予link10的性质,总是告诉扣索上的点位移过大。并且每次出现的位移过大的点的位置还不一样。不知道为什么?有人以前给过我一个模型。就是把索分成了计算,约束两个端点,就可以计算。
   现把命令流附上,希望高手指点!
/prep7
/title,the anslyse of small arch bridge
et,1,82                  
rectng,-0.1,0.1,-0.1,0.1                              
!esize,0.1                        
amesh,all   
secwrite,xxx11,sect,,1               
SECTYPE,1,BEAM,MESH,                  
SECOFFSET,CENT,,,                     
SECREAD,'xxx11','SECT',,MESH            
asel,all                     
ACLEAR,ALL
ADELE,ALL,,,1

etdele,1                        

et,1,beam188                        
mp,ex,1,2.1e11
mp,dens,1,7800
mp,prxy,1,0.3
mp,alpx,1,1e-5

et,2,link10                     
mp,ex,2,2.1e11
mp,dens,2,7800
mp,prxy,2,0.3
mp,alpx,2,1e-5

r,2,0.05,0.0001,



*dim,cs,array,48
*dim,y,array,48
*dim,z,array,48
m=1.9
k=1.257195827                  
f=8.5
y(1)=0
*do,i,1,46,1
y(i+1)=y(i)+0.5
*enddo
y(48)=y(47)+0.349166446
*do,i,1,48,1
cs(i)=(23.34916645-y(i))*2/23.34916645/2
z(i)=f-f*(cosh(k*cs(i))-1)/(m-1)
*enddo
*do,i,1,47,1
n,i,y(i)-23.34916645,z(i)-8.5
*enddo
n,48,y(48)-23.34916645,z(48)-8.5


*do,i,47,1,-1
n,96-i,23.34916645-y(i),z(i)-8.5
*enddo

type,1
mat,1
real,1
*do,i,1,94
e,i,i+1
*enddo

k,5,-23.349,10
k,6,-23.349,11
k,7,23.349,10
k,8,23.349,11

knode,1,18
knode,2,38
knode,3,58
knode,4,78


LSTR,1,5
lstr,2,6
lstr,3,8
lstr,4,7
lsel,all
latt,2,2,2


lesize,all,,,10
lmesh,all

nummrg,node

/solu
acel,,10

ANTYPE,0
SSTIF,ON
PSTRES,ON
NLGEOM,1
TIME,1
NSUBST,50,0,0
kbc,0


d,1,all
d,95,all

nsel,s,loc,y,10
nsel,a,loc,y,11

d,all,all

allsel
solve
save

[ 本帖最后由 rodge 于 2007-11-10 11:37 编辑 ]

yangdong28 发表于 2007-11-8 01:29

你的问题,我的理解是这样的,当你用多段线(多个单元)来模拟拉索时,在每个中间节点都是有横向(垂直于单元轴线)位移的,这样的话,比用一个单元模拟索,就多出很多横向自由度,所以运行总是说“y方向位移过大,刚体约束不足”。下面的命令流,我约束了扣索的横向位移,就可以正常运行。
方法一:一个单元模拟索
/prep7
/title,the anslyse of small arch bridge
et,1,82                  
rectng,-0.1,0.1,-0.1,0.1                              
!esize,0.1                        
amesh,all   
secwrite,xxx11,sect,,1               
SECTYPE,1,BEAM,MESH,                  
SECOFFSET,CENT,,,                     
SECREAD,'xxx11','SECT',,MESH            
asel,all                     
ACLEAR,ALL
ADELE,ALL,,,1

etdele,1                        

et,1,beam188                        
mp,ex,1,2.1e11
mp,dens,1,7800
mp,prxy,1,0.3
mp,alpx,1,1e-5

et,2,link10                     
mp,ex,2,2.1e11
mp,dens,2,7800
mp,prxy,2,0.3
mp,alpx,2,1e-5

r,2,0.05,0.0001,



*dim,cs,array,48
*dim,y,array,48
*dim,z,array,48
m=1.9
k=1.257195827                  
f=8.5
y(1)=0
*do,i,1,46,1
y(i+1)=y(i)+0.5
*enddo
y(48)=y(47)+0.349166446
*do,i,1,48,1
cs(i)=(23.34916645-y(i))*2/23.34916645/2
z(i)=f-f*(cosh(k*cs(i))-1)/(m-1)
*enddo
*do,i,1,47,1
n,i,y(i)-23.34916645,z(i)-8.5
*enddo
n,48,y(48)-23.34916645,z(48)-8.5


*do,i,47,1,-1
n,96-i,23.34916645-y(i),z(i)-8.5
*enddo

type,1
mat,1
real,1
*do,i,1,94
e,i,i+1
*enddo

k,5,-23.349,10
k,6,-23.349,11
k,7,23.349,10
k,8,23.349,11

knode,1,18
knode,2,38
knode,3,58
knode,4,78


LSTR,1,5
lstr,2,6
lstr,3,8
lstr,4,7
lsel,all
latt,2,2,2


lesize,all,,,1
lmesh,all

nummrg,node


/solu
acel,,10
ANTYPE,0
csys,0
d,1,all
d,95,all

nsel,s,loc,y,10
nsel,a,loc,y,11

d,all,all

allsel
solve
save





方法二:多个单元模拟索
/prep7
/title,the anslyse of small arch bridge
et,1,82                  
rectng,-0.1,0.1,-0.1,0.1                              
!esize,0.1                        
amesh,all   
secwrite,xxx11,sect,,1               
SECTYPE,1,BEAM,MESH,                  
SECOFFSET,CENT,,,                     
SECREAD,'xxx11','SECT',,MESH            
asel,all                     
ACLEAR,ALL
ADELE,ALL,,,1

etdele,1                        

et,1,beam188                        
mp,ex,1,2.1e11
mp,dens,1,7800
mp,prxy,1,0.3
mp,alpx,1,1e-5

et,2,link10                     
mp,ex,2,2.1e11
mp,dens,2,7800
mp,prxy,2,0.3
mp,alpx,2,1e-5

r,2,0.05,0.0001,



*dim,cs,array,48
*dim,y,array,48
*dim,z,array,48
m=1.9
k=1.257195827                  
f=8.5
y(1)=0
*do,i,1,46,1
y(i+1)=y(i)+0.5
*enddo
y(48)=y(47)+0.349166446
*do,i,1,48,1
cs(i)=(23.34916645-y(i))*2/23.34916645/2
z(i)=f-f*(cosh(k*cs(i))-1)/(m-1)
*enddo
*do,i,1,47,1
n,i,y(i)-23.34916645,z(i)-8.5
*enddo
n,48,y(48)-23.34916645,z(48)-8.5


*do,i,47,1,-1
n,96-i,23.34916645-y(i),z(i)-8.5
*enddo

type,1
mat,1
real,1
*do,i,1,94
e,i,i+1
*enddo

k,5,-23.349,10
k,6,-23.349,11
k,7,23.349,10
k,8,23.349,11

knode,1,18
knode,2,38
knode,3,58
knode,4,78


LSTR,1,5
lstr,2,6
lstr,3,8
lstr,4,7
lsel,all
latt,2,2,2


lesize,all,,,10
lmesh,all

nummrg,node


csys,wp
nwplan,wp,98,99,1
nsel,s,node,,98,106,1
nrotat,all
d,all,uy


allsel
nwplan,wp,109,110,1
nsel,s,node,,109,117,1
nrotat,all
d,all,uy


allsel
nwplan,wp,120,121,1
nsel,s,node,,120,128,1
nrotat,all
d,all,uy


allsel
nwplan,wp,131,132,1
nsel,s,node,,131,139,1
nrotat,all
d,all,uy




/solu
acel,,10
ANTYPE,0
csys,0
d,1,all
d,95,all

nsel,s,loc,y,10
nsel,a,loc,y,11

d,all,all

allsel
solve
save

但是两个方法的计算结果,区别很大,一方法的最大位移为0.006215;二方法为0.002947.我觉得是因为方法二对索的横向位移限制过多,相当于增大了索的刚度,使索没有随拱结构一起变形,自然二的最大位移小很多。
另外,感觉你的命令还可以更简练、明确。

chenyanru 发表于 2007-11-9 11:31

把我的命令流里面的PSTRES,ON去掉就可以了
页: [1]
查看完整版本: 把扣索分成节段后,出现位移过大的错误(apdl)