[Nek5000-users] Fluid-structure interaction setup

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Sun Jun 22 17:22:25 CDT 2014


Hi Ravi,

I have a couple of ideas about this - but they likely need some development.

Can you contact me off-list?

Paul Fischer

________________________________
From: nek5000-users-bounces at lists.mcs.anl.gov [nek5000-users-bounces at lists.mcs.anl.gov] on behalf of nek5000-users at lists.mcs.anl.gov [nek5000-users at lists.mcs.anl.gov]
Sent: Sunday, June 22, 2014 4:55 PM
To: nek5000-users at lists.mcs.anl.gov
Subject: [Nek5000-users] Fluid-structure interaction setup

Dear NEK Users,

I need some help in modelling fluid-structure using NEK5000. Based on the inputs from mailing list, I am able to extract the forces on a cylinder in laminar flow.

The physical problem I am trying to model is vortex-induced vibration (VIV) of a circular cylinder.  I will be restricting the motion of cylinder to be only along cross flow direction, driven by the lift,

F_L = dragy(1)   --------------------------------(1)

My next step is to use the lift force to solve dynamics of the cylinder using:

M ddy + C dy + K y = F_L --------------------(2)

I am asking my questions first; please find additional details below the questions.

1.       Q1. How can I assign the mesh velocity only to the portion of boundary with identifier ‘mv’ in *.rea file?

 In my pseudo code and program structure of *.usr file below, I tried to assign mesh velocity by calling a subroutine  in ‘u_meshv’ within the subroutine ‘userbc’ by following the ocyl.usr example. If I do so, my cylinder dynamics is being called for each node, since ‘usrbc’ is called for each node. I would like to avoid this, since I would like to compute cylinder dynamics only once per time step and assign the resulting velocity to moving boundary.

 Q2.   How can I get the lift force for each time-step?
   Currently, I am calling the ‘torque_calc’ in ‘userchk’ and using the common block ‘common /ctorq/’ in all the subroutine that I need the lift force for further computation.


My program setup:

I am using the moving cylinder examples from the NEK5000 examples ‘ocyl’ and adding/modifying subroutines to accomplish solution of the cylinder coupled with fluid & mesh motion solution in a staggered fashion. I am providing my pseudo-code/code snippet to illustrate my approach.

1.       I will call the u_meshv from the userbc subroutine to set the mesh velocity on the moving boundary.
***************************** usrbc*******************************
subroutine usrbc
…
…
  if (x .lt. -1.1) then
        ux=1
        uy=0.
        uz=0.
     else
        call u_meshv(ux,uy,uz,x,y,z)
    endif
***************************** **********************************


2.      In u_meshv, I will call a subroutine to ‘cyl_dynamics’ which will solve the second-order differential equation (2) above for acceleration, velocity, and displacement (an, vn, dn at nth time step and an1, vn1, dn1 at (n+1)th time step).

*************************u_meshv*******************************
 subroutine u_meshv(ux,uy,uz,x,y,z)
…
 common /cyldyn/  dn,vn,an,dn1,vn1,an1
…
do FSI_ITR
call cyl_dynamics
if (cyl. Dynamics is in equilibrium with fluid dynamics) then
goto XXXX !  exit the loop
else
call cyl_dynamics
endif
**********************************************************
************************* cyl_dynamics *******************************
subroutine cyl_dynamics
…
common /cyldyn/  dn,vn,an,dn1,vn1,an1
…

c Code for calculation cylinder dynamics for a given F_L

**********************************************************

Any help in implementing this fluid-structure interaction problem is much appreciated. If there is an example which performs such fluid-structure couple solution please let me know.  Please let me know if I need to provide any additional details to explain my problem.


--
Ravi Kumar T R

University of Illinois at Urbana-Champaign
ph : +1 217 778 7538
http://lndvl.mechse.illinois.edu/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/nek5000-users/attachments/20140622/84ea2b61/attachment-0001.html>


More information about the Nek5000-users mailing list