13.11. Example: Planar Incident Wave FSI Scattering of an Infinite Cylindrical Shell

This example problem demonstrates the use of FLUID221 to predict the acoustic scattering of a planar incident wave of an infinite cylindrical shell (radius = 1 m, thickness = 0.02 m).

The FSI between the acoustic incident wave and the structural shell is taken into account.

The coupled harmonic problem uses the symmetric formulation, requiring fewer computational resources than other formulations.

The incident plane wave is defined by the magnitude p0 = 1, the incident angle θ = 90° and φ = 180°.

PML is used for the truncation of the open space. For more information, see Perfectly Matched Layers (PML) in the Mechanical APDL Theory Reference.

/batch,list
/com,Plane wave FSI scattering from a cylindrical shell
/title,FSI Scattering of Cylindrical Shell
/nopr
/prep7
pi=3.1415926535
                                 ! material properties
rho=1025                         ! water mass density
c0=1520                          ! sound speed
ra=1                             ! radius of cylindrical shell
thick=0.02                       ! thickness of cylindrical shell
ka=2                             ! product of wavenumber and radius
k0=ka/ra
freq=k0*c0/(2.*pi)               ! frequency
wavel=c0/freq                    ! wavelength
h=wavel/10                       ! nwsh size
                                 ! define element properties
et,11,200,7                      ! mesh element
et,1,220,2,0                     ! 20-node element using symmetric formula
et,2,220,2,1,,1                  ! pml element using symmetric formula
et,3,281                         ! shell element
mp,dens,1,rho                    ! water density
mp,sonc,1,c0                     ! water sound speed
mp,ex,2,2.1e11                   ! solid young module
mp,dens,2,7840                   ! solid density
mp,nuxy,2,0.3                    ! solid Minor Poisson's ratios
                                 ! define the model
rb=ra+0.5*wavel
rc=rb+0.5*wavel
nz=2
zl=nz*h
cyl4,0,0,0,0,ra,180,0
*dim,a,array,4
*dim,b,array,3
a(1)=-rc
a(2)=-rb
a(3)=rb
a(4)=rc
b(1)=0
b(2)=rb
b(3)=rc
*do,i,1,3
*do,j,1,2
 rect,a(i),a(i+1),b(j),b(j+1)
*enddo
*enddo
asba,4,1,,dele,dele
aglue,all
asel,s,loc,x,a(2),a(3)
asel,r,loc,y,b(1),b(2)
cm,aa,area
alls
                                   ! mesh the model
esize,h
type,11
amesh,all                          ! mesh 2d surface
asel,s,,,aa
type,1                             ! extrude 2d element to 3d
mat,1
esize,,nz
vext,all,,,0,0,zl
alls
asel,s,loc,z,0
asel,u,,,aa
type,2
mat,1
esize,,nz
vext,all,,,0,0,zl                  ! extrude 2d element to 3d pml
alls
                                   ! clean up 2d element
asel,s,loc,z,0
aclear,all
etdel,11
nummgr,all
                                   ! flag fsi interface
csys,1,
nsel,s,loc,x,ra
sf,all,fsi
alls
csys,0
                                   ! define shell element
sectype,,shell
secdata,thick,2                    ! shell with thickness=0.02 and material 2
csys,1
nsel,s,loc,x,ra
type,3
mat,2
esurf                              ! generate shell element
alls
csys,0
                                   ! define boundary condition
nsel,all
d,all,uz,0
nsel,s,loc,y,b(1)
d,all,uy,0
alls
                                   ! incident plane wave
p0=1
phi=180
theta=90
awave,1,plan,pres,ext,p0,0,phi,theta,,rho,c0
fini
                                   ! perform solution
/solu
asol,scat,on                       ! activate scattered field formula
ascres,total                       ! output total field
eqslv,sparse                       ! sparse direct solver
antype,harmic                      ! harmonic analysis
harfrq,freq                        ! define working frequency
solve
fini
/post1
                                   ! calculate the plane wave value on the shell surface
dtorad=3.1415926535/180.
kx=-k0*sin(theta*dtorad)*cos(phi*dtorad)
csys,1
nsel,s,loc,z,0
nsel,r,loc,x,ra                    ! nodes on shell
csys
*get,ndmax,NODE,0,COUNT
*dim,ang1,array,ndmax
*dim,psr,array,ndmax
*dim,psi,array,ndmax
*dim,pang,array,ndmax
node=0
*do,i,1,ndmax
 node=ndnext(node)
 xx=nx(node)
 yy=ny(node)
 pang(i)=kx*xx                     ! plane wave phase angle
 ang1(i)=atan2(yy,xx)/dtorad       ! nodal angle in polar coordinate
*enddo
                                   ! real solution of the pressure
set,1,1
node=0
*do,i,1,ndmax
 node=ndnext(node)
 pr0=p0*cos(pang(i))               ! real part of incident plane wave
 *get,pp,NODE,node,pres            ! real part of total pressure solution
 psr(i)=pp-pr0                     ! real part of scattered wave
*enddo
                                   ! imaginary solution of the pressure
set,1,1,,1
node=0
*do,i,1,ndmax
 node=ndnext(node)
 pi0=-p0*sin(pang(i))              ! imaginary part of incident plane wave
 *get,pp,NODE,node,pres            ! imaginary part of total pressure solution
 psi(i)=pp-pi0                     ! imaginary part of scattered wave
*enddo	
                                   ! sort results in terms of angles
*do,i,1,ndmax-1
 *do,j,i,ndmax
   *if,ang1(j),lt,ang1(i),then
     tmp=ang1(i)
     ang1(i)=ang1(j)
     ang1(j)=tmp
     tmp=psr(i)
     psr(i)=psr(j)
     psr(j)=tmp
     tmp=psi(i)
     psi(i)=psi(j)
     psi(j)=tmp
  *endif
 *enddo
*enddo
/com,******************************************************************
/com,*     Mechanical APDL results: scattered pressure on the shell surface     *
/com,******************************************************************
/com, Angle (Deg)              P_REAL            P_IMAG
/com,
*do,i,1,ndmax
  ang0=ang1(i)
  p0r=psr(i)
  p0i=psi(i)
*vwrite,ang0,p0r,p0i
 (2x,f7.2,17x,g12.5,6x,g12.5)
*enddo
fini