160 likes | 269 Views
AcuSolve ™ A Practical Fluid/Structure Interaction November 2004. ACUSIM Software Inc., 2685 Marine Way, Suite 1215, Mountain View, California 94043 Tel: (650) 988-9700 Fax: (650) 988-9770 info@acusim.com http://www.acusim.com. Acusim Software Inc. Proprietary Information.
E N D
AcuSolve™ A Practical Fluid/Structure Interaction November 2004 ACUSIM Software Inc., 2685 Marine Way, Suite 1215, Mountain View, California 94043 Tel: (650) 988-9700 Fax: (650) 988-9770 info@acusim.com http://www.acusim.com Acusim Software Inc. Proprietary Information
Fluid/Structure Interaction (FSI) • FSI is defined as simulating the bi-directional interaction (coupling) between fluid flow and a deforming solid/structural model. • This definition is very specific. • Does not include: • Fluid and thermal solid/structure analysis (ie., Conjugate heat transfer) • Fluid coupling with rigid body dynamics • Which are both supported by AcuSolve • Examples: • Flow induced vibration of a solid wall and coupling to Computational Aero Acoustics (CAA) • Vortex Induced Vibration (VIV) modeling of oil platform risers • Deformation of vein walls due to pulsing blood flow
Linear Solid/Structure Deformation • Assume 1: linear solid/structural deformation • Linear finite element dynamic system of equations: • Where • : Nodal acceleration • : Nodal velocity • : Nodal displacement • : Mass matrix - Not a function of solution • : Damping matrix - Not a function of solution • : Stiffness matrix - Not a function of solution • : Forcing vector - Includes fluid forces on the structure
Eigensystem • Consider the Eigenvalue problem • Where • : ith Eigenvalue • : ith Eigenvector • : Number of modes (=1 to 100 or more) • Assumption 2: Eigenmodes are sufficient to well represent the dynamic behavior of the solid/structural model
Reduced System • Projection of dynamic system into the Eigenspace: • Where • This is independent ODEs.
Solution of ODE • Solution of the independent ODEs: • is first computed from the flow field • is then projected to • is solved using a Kinetic-energy conserving time integrator • Given the solution of the ODEs, we have
Practical FSI • Step 1: Solid Model • A solid/structural finite element mesh is created • The first Eigenmodes are computed • May use any existing linear solid/structural code: • Abaqus, Ansys, Nastran, …, analytical • Step 2: Projection • An independent fluid mesh is created • Fluid and solid surfaces in contact are identified • Eigenvectors are projected from the solid to fluid surface nodes Solid Elements Fluid Elements Fluid Surface Nodes
Practical FSI (cont) • Step 3: AcuSolve • Input the ODE coefficients and projected Eigenvectors • Solve the transient coupled flow and linear deformation • Given the solution of ODEs and Eigenvectors • Construct and impose BCs on mesh displacement or flow velocity of surface nodes • Given the flow solution • Compute the nodal forces • Multiply by Eigenvectors to get the ODE forces • Time advance the ODE solution • Step 4 (optional): Post processing • The AcuSolve’s ODE solution may be used for fatigue and other structural analyses.
Advantages • The fluid and solid codes are run independently and separately • No run time coupling is required • Each may be run with a different time increment and duration • No fluid mesh size limitation imposed by FSI • Significantly more stable than alternative approaches • Eliminates the hassle of coupled solution • Eliminates high wave number modes, yields smooth coupling • Very efficient • Problem setup • CPU time
Limitations • Only linear solid/structural analysis accomodated • More precisely, only constant and independent coefficients are currently accommodated • Only a small number of modes is practical • There is no inherent limitation on this, only practical ones • Fluid forces are treaded explicitly in the ODE time integrator • That is, they are one half step behind
First Solution • This technology is brand new to AcuSolve • First solution
Input File • The ODE coefficients are entered as FLEXIBLE_BODY( "baffle" ) { equation = mesh_displacement num_modes = 1 mass = { 200 } stiffness = { 50 } damping = { 0 } external_force = { 0 } initial_displacement = { 0 } initial_velocity = { 0 } initial_force = { 0 } surface_outputs = { "baffle" } } • Where the SURFACE_OUTPUT"baffle" gives the forces on the contact fluid surface
Input File (cont) • Boundary condition NODAL_BOUNDARY_CONDITION( "baffle mesh_x_displacement" ) { nodes = Read( "channel.baffle.nbc" ) variable = mesh_x_displacement type = flexible_body flexible_body = "baffle" nodal_modes = Read( "channel.baffle.xmd" ) } NODAL_BOUNDARY_CONDITION( "baffle x_velocity" ) { nodes = Read( "channel.baffle.nbc" ) variable = x_velocity type = match_mesh_velocity }
Projection From ANSYS • Solve an ANSYS Eigenvalue problem • Extract the Eigenvalues using acuAnsys2Pev.mac macro • This creates the files • nodes.dat coordinates file • elems.dat elements file • mode??.dat eigenvalue & -vectors of mode ?? • Identify the fluid nodes in contact with the solid • Create a coordinate file for those nodes, say called fluid_fsi.crd
Projection From ANSYS (cont) • Project the Eigenvectors acuPev –problem fsi \ -from raw \ -fcrd fluid_fsi.crd \ -crd nodes.dat \ -cnn elems.dat \ -mode mode01.dat,mode02.dat,... • Optionally, you may add “-cnndim 2” for 2D ANSYS mesh (such as plates and shells)
Projection From ANSYS (cont) • acuPev program • Creates the files • fluid_fsi.crd.xmd Eigenvectors in x-direction • fluid_fsi.crd.ymd Eigenvectors in y-direction • fluid_fsi.crd.zmd Eigenvectors in z-direction • These can be passed directly to nodal_modes parameter in NODAL_BOUNDARY_CONDITION command. • Also creates outputs lines like acuPev: Eigenvalue 1 vec l2/linf = 2.50000e+00 ... acuPev: Eigenvalue 2 vec l2/linf = 4.00000e+00 ... • These are the Eigenvalues that may be passed directly to the stiffness parameter of FLEXIBLE_BODY command.