ACU-T: 5401 Piezoelectric Flow Energy Harvester - PFSI & IMM

This tutorial provides the instructions for setting up, solving and viewing results for a simulation of a piezoelectric fluid harvester. In this simulation, a piezoelectric flow harvester is placed in a fluid flow channel. The harvester is attached to a cylinder mount which also acts as a bluff body causing vortices in the fluid flow. The interaction between the pressure fields generated by the vortices and the flow harvester structure is simulated in this tutorial. Interpolated mesh motion approach is used to compute the mesh deformation in the fluid domain as it interacts with the deforming structure.

The basic steps in any CFD simulation are shown in ACU-T: 2000 Turbulent Flow in a Mixing Elbow. The following additional capabilities of AcuSolve are introduced in this tutorial:
  • Fluid-structure interaction using the interpolated mesh motion (IMM)
  • Use of the Eigenmode Manager for transferring structural data onto CFD mesh
In this tutorial you will do the following:
  • Analyze the problem
  • Start AcuConsole and create a simulation database
  • Set general problem parameters
  • Set solution strategy parameters
  • Import the geometry for the simulation
  • Create a volume group and apply volume parameters
  • Create surface groups and apply surface parameters
  • Set global and local meshing parameters
  • Generate the mesh
  • Import and transfer structural data onto the CFD mesh
  • Set up the fluid-structure interaction simulation using IMM
  • Set the appropriate boundary conditions
  • Run AcuSolve
  • Monitor the solution with AcuProbe
  • Post processing the nodal output with AcuFieldView


You should have already run through the introductory tutorial, ACU-T: 2000 Turbulent Flow in a Mixing Elbow. It is assumed that you have some familiarity with AcuConsole, AcuSolve, and AcuFieldView. You will also need access to a licensed version of AcuSolve.

Prior to running through this tutorial, copy from <Altair_installation_directory>\hwcfdsolvers\acusolve\win64\model_files\tutorials\AcuSolve to a local directory. Extract the files fluid.x_t and beam_modal.op2 from The file fluid.x_t stores the geometry information for the fluid portion of the model for this problem, and the file beam_modal.op2 stores the output data from the structural solver which will be projected on to the CFD mesh that will be generated in the course of the tutorial.

The color of objects shown in the modeling window in this tutorial and those displayed on your screen may differ. The default color scheme in AcuConsole is "random," in which colors are randomly assigned to groups as they are created. In addition, this tutorial was developed on Windows. If you are running this tutorial on a different operating system, you may notice a slight difference between the images displayed on your screen and the images shown in the tutorial.

Analyze the Problem

An important step in any CFD simulation is to examine the engineering problem at hand and determine the important parameters that need to be provided to AcuSolve.

Figure 1 shows a CFD model consisting of a cantilever beam and a rigid cylindrical body. The cylindrical body produces vortex shedding in the flow downstream, inducing alternating asymmetric pressure distribution on either side of the beam. Such an alternating pressure distribution results in a sustainable oscillating vibration in the beam.

This model is a simplified model of a piezoelectric flow energy harvester.

Figure 2 shows the beam with a brass shim sandwiched between the piezoelectric layers on either side. Piezoelectric materials have a property of generating an electric charge when subjected to oscillating structural stress. The electric charge is tapped by a separate electromechanical arrangement. In this tutorial, we will focus on the simulation of the fluid forces on the beam in response to the structural deformation. The schematics of the problem which will be addressed in this tutorial is shown in Figure 1. The modeled domain consists of a fluid volume. The fluid solver does not require the solid body to be modeled. However, the results of the structural solver will be used to define the solid body and the surfaces where the fluid interacts with the solid will be allowed to deform according to the Eigen modes of the beam. Figure 2 shows the arrangement of the beam with its various layers.

Figure 1. Schematic of the Problem

Figure 2. The Beam with its Various Layers

Fluid Structure Interaction (FSI) is the interaction between a fluid flow and a deformable solid structure in contact with the flow. There are two FSI approaches: Practical Fluid/Structure Interaction (P-FSI) and Direct-Coupling Fluid/Structure Interaction (DC-FSI). Details about these approaches can be found in ACU-T: 5400 Piezoelectric Flow Energy Harvester: A Fluid-Structure Interaction (P-FSI).

The P-FSI approach requires eigenvalues of the OptiStruct structural model. It is then mapped to the AcuSolve CFD model in order to compute the structural deformation in response to the vortex shedding (fluid force) on the beam. The computation of the structural deformation will be made using the Interpolated Mesh Motion (IMM) rather than using the Arbitrary Lagrangian Eulerian (ALE).

When using interpolated mesh motion (IMM), all the surfaces associated with this motion are assigned as interpolated motion surfaces and collected into a single set. All the nodes falling within the boundaries of that set are then interpolated to determine their weighted displacement based on the distance from their surrounding “driving” surfaces. For example, in this simulation shown in Figure 3, as the flow passes over the cylinder and the beam, the forces causes the beam to move in transverse direction. This transverse motion of the beam should be communicated to the top and bottom surfaces. Assigning these surfaces as interpolated surfaces (as shown in Figure 3) and then imparting the interpolated mesh motion to the nodes within the volume will linearly scale the displacement of the surrounding nodes as a function of distance between the surfaces associated with the interpolated mesh motion. The main advantage of interpolated mesh motion over ALE is that no extra partial differential equations are solved, hence lower computation times. However, this approach is limited to problems involving not so complex mesh motion.

Figure 3. The Interpolated Motion Surfaces of the Model

In this tutorial, the simulation is performed using the interpolated mesh motion approach.

Define the Simulation Parameters

Start AcuConsole and Create the Simulation Database

In this tutorial, you will begin by creating a database, populating the geometry-independent settings, loading the geometry, creating volume and surface groups, setting group parameters, adding geometry components to groups, and assigning mesh controls and boundary conditions to the groups. Next you will generate a mesh and run AcuSolve to solve for the number of time steps specified. Finally, you will visualize some characteristics of the results using AcuFieldView.

In the next steps you will start AcuConsole, and create the database for storage of the simulation settings.

  1. Start AcuConsole from the Windows Start menu by clicking Start > Altair <version> > AcuConsole.
  2. Click the File menu, then click New to open the New data base dialog.
    Note: You can also open the New data base dialog by clicking on the toolbar.
  3. Browse to the location that you would like to use as your working directory.
    This directory is where all files related to the simulation will be stored. The AcuConsole database file (.acs) is stored in this directory. Once the mesh and solution are created, additional files and directories will be created within this directory.
  4. Create a new directory in this location. Name it PFSI_IMM_Tutorial and navigate into this directory.
  5. Enter piezo_harvester_IMM as the file name for the database, or choose any name of your preference.
    Note: In order for other applications to be able to read the files written by AcuConsole, the database path and name should not include spaces.
  6. Click Save to create the database.

Set General Simulation Parameters

In the next steps you will set attributes that apply globally to the simulation. To simplify this task, you will use the BAS filter in the Data Tree Manager. The BAS filter limits the options in the Data Tree to show only the basic settings.

  1. Click BAS in the Data Tree Manager to switch to basic view in the Data Tree.

    Figure 4.
  2. Double-click the Global Data Tree item to expand it.
    Tip: You can also expand a tree item by clicking next to the item name.

    Figure 5.
  3. Double-click Problem Description to open the Problem Description detail panel.
  4. Enter AcuSolve PFSI with IMM Tutorial as the Title for this case.
  5. Enter Piezoelectric harvester as the Sub title for this case.
  6. Change the Analysis type to Transient.
  7. Set the Turbulence equation to Spalart Allmaras.
  8. Change the Mesh type to Fully Specified.
    Using a ‘Fully specified’ mesh type allows the mesh in the domain to be moved based on the mesh motion defined by user in the later steps. This user-specified mesh motion can be a rigid body motion or an Interpolated mesh motion (IMM). In this tutorial you will define the mesh motion using the Interpolated mesh motion.

    Figure 6.

Set Solution Strategy Parameters

  1. Double-click Auto Solution Strategy to open the Auto Solution Strategy detail panel.
  2. Check that the Analysis type is set to Transient.
  3. Set the Max time steps as 300.
  4. Set the Initial time increment as 0.01.
  5. Set the Min stagger iterations as 3.
  6. Set the Max stagger iterations as 5.
  7. Set the Relaxation factor to 0.
    When solving transient solutions, the relaxation factor should be set to zero. A non-zero relaxation factor causes incremental updates of the solution, which will impact the time accuracy of the solution for transient cases.
  8. Check that Flow and Turbulence are both set to On.

    Figure 7.

Set Material Model Parameters

AcuConsole has three pre-defined materials, Air, Aluminum, and Water, with standard parameters defined. In the next steps you will verify that the pre-defined material properties of air match the desired properties for this problem.
  1. Double-click Material Model in the Data Tree to expand it.
  2. Double-click Water in the Data Tree to open the Water detail panel.
    The material type for water is Fluid. Fluid is the default material type for any new material created in AcuConsole.
  3. In the Density tab, check the following:
    1. The Type is set to Constant.
    2. The Density value is 1000 kg/m3
  4. Click the Viscosity tab. The viscosity of water is 0.001 kg/m – sec.

The remaining thermal and other material properties are not critical to this simulation. However, you may browse through the tabs to check the complete material specification.

  1. Save the database to create a backup of your settings. This can be achieved with any of the following methods.
    • Click the File menu, then click Save.
    • Click on the toolbar.
    • Click Ctrl+S.
    Note: Changes made in AcuConsole are saved into the database file (.acs) as they are made. A save operation copies the database to a backup file, which can be used to reload the database from that saved state in the event that you do not want to commit future changes.

Import the Geometry and Define the Model

Import the Geometry

You will import the geometry in the next part of this tutorial. You will need to know the location of fluid.x_t in order to complete these steps. This file contains information about the geometry in Parasolid ASCII format.
  1. Click File > Import.
  2. Browse to the directory containing fluid.x_t.
  3. Change the file name filter to Parasolid File (*.x_t *.xmt *X_T …).
  4. Select fluid.x_t and click Open to open the Import Geometry dialog.

    Figure 8.

    For this tutorial, the default values for the Import Geometry dialog are used to load the geometry. If you have previously used AcuConsole, be sure that any settings that you might have altered are manually changed to match the default values shown in the figure. With the default settings, volumes from the CAD model are added to a default volume group. Surfaces from the CAD model are added to a default surface group. You will work with groups later in this tutorial to create new groups, set flow parameters, add geometric components, and set meshing parameters.

  5. Click Ok to complete the geometry import.

    Figure 9.

Apply Volume Attributes

Volume groups are containers used for storing information about a volume region. This information includes solution and meshing parameters applied to the volume and the geometric regions that these settings are applied to.

When the geometry was imported into AcuConsole, all volumes were placed into the "default" volume container.

Since the model for this tutorial has only a single volume, it will be the only volume in the default volume group when the geometry is imported. Even when there is a single volume in the model, it is advisable to rename the volume for ease of identification in future. In the next steps you will rename the default volume group container, and set the material and other properties for it.

  1. Expand the Model Data Tree item.
  2. Turn off the display of Surfaces by right-clicking on Surfaces and selecting Display off.
  3. Expand Volumes. Toggle the display of the default volume container by clicking and next to the volume name.
    Note: You may not see any change when toggling the display if Surfaces are being displayed, as surfaces and volumes may overlap.
  4. Rename the default volume group to fluid.
    Note: When an item in the Data Tree is renamed, the change is not saved until you press the Enter key on your keyboard. If you move the input focus away from the item without entering it, your changes will be lost.
  5. Set up the fluid volume set:
    1. Expand the fluid volume group in the tree.
    2. Double-click Element Set under fluid to open it in the detail panel.
    3. Check that the Medium for the volume is set to Fluid. If not, click on the drop-down menu and select Fluid.
    4. Click the Material model drop-down menu and select Water.

      Figure 10.

Create Surface Groups and Apply Surface Parameters

Surface groups are containers used for storing information about a surface, including solution and meshing parameters, and the corresponding surface in the geometry that the parameters will apply to.

In the next steps you will define surface groups, assign the appropriate settings for the different characteristics of the problem, and add surfaces to the group containers.

In the process of setting up a simulation, you need to move into different panels for setting up the boundary conditions, mesh parameters, and so on, which can sometimes be cumbersome, especially for models with too many surfaces. To make it easier, less error prone, and to save time, two new dialogs are provided in AcuConsole. Use the Volume Manager and Surface Manager to verify and provide the information for all surface or volume entities at once. In this section some features of Surface Manager are exploited.

  1. Turn-off the display for Volumes by right-clicking Volumes and selecting Display off .
  2. Right-click Surfaces in the Data Tree and select Surface Manager.
  3. In the Surface Manager dialog, click New six times to create six new surface groups.

    Figure 11.

    If you cannot see the Simple BC Active and Simple BC Type columns, click Columns , select these two columns from the list and click Ok.

    Figure 12.
  4. Turn off the display for all surfaces except for the default surface.
  5. Rename Surface 1 through Surface 6 according to Figure 13.
  6. Set the Simple BC Active and Simple BC Type columns, per Figure 13.

    Figure 13.
  7. Assign the surfaces to the z_pos and z_neg surface groups.
    1. Click Add to in the z_pos row in the Surface Manager.
    2. Select the planar surface with the maximum z-coordinate, as shown in Figure 14, and click Done.
    3. Follow the procedure to assign the surface with the minimum z-coordinate to the z_neg surface group.

      Figure 14.
  8. Assign the surfaces enclosing the domain at the top and bottom to the slip surface group.
  9. Assign the surface with the minimum x-coordinate to the inlet surface group.
  10. Assign the surface with the maximum x-coordinate to the outlet surface group.
  11. Assign the cylinder surface to the cylinder surface group. This surface is the contact boundary between the fluid and the cylinder. Use the following image as the reference for selecting the required surfaces.

    Figure 15.

When the geometry was loaded into AcuConsole, all geometry surfaces were placed in the default surface group container. This default surface group was renamed to beam in the Surface Manager. In the previous steps, you assigned some surfaces to various other surface groups that you created. At this point, all that is left in the beam surface group are the surfaces that make up the contact boundary between the fluid volume and the beam.

  1. Close the Surface Manager.

Create a Force Ramp Multiplier Function

The force acting on the beam due to the flow will be ramped gradually over the first few time steps. After these first few time steps the force on the beam will remain constant. This will be achieved using a multiplier function. In the next few steps you will create a linear multiplier function which will later be assigned as a force multiplier function for load acting on the beam.

  1. Click PB* in the Data Tree Manager to display all the available settings related to general problem setup in the Data Tree.
  2. Right-click Multiplier Function and select New.
    A new entry, Multiplier Function 1, is created in the Data Tree under the Multiplier Function branch.
  3. Right-click Multiplier Function 1, select Rename in the context menu and type ForceRamp as the entity name.
  4. Double-click ForceRamp to open the ForceRamp detail panel.
  5. In the detail panel, change the Type to Piecewise Linear.
  6. Change the Curve fit variable to Time step.

    Figure 16.
  7. Click Open Array next to the Curve fit values option and create two rows in the Array Editor dialog.
  8. Fill in the values as follows:

    Figure 17.
  9. Click OK to close the dialog.

Create a Flexible Body

In the introductory discussion of this tutorial, it was mentioned that FSI is the interaction between a fluid and a deformable, or in other words, flexible solid body. In AcuConsole, such a solid body is defined using the Flexible Body command. In P-FSI, the structure is reduced in the modal space. The Flexible Body definition includes the specification of mass, stiffness and damping matrices of the body. The mass matrix is usually normalized to I (unity matrix), and stiffness matrix k is a diagonal matrix where the diagonal entries each represent an Eigen value. The surface outputs list refers to the surfaces outputs which are used to calculate the forces and moments on the solid body.

  1. Click FSI in the Data Tree Manager to display the options relevant to setting up an FSI model in the Data Tree.
  2. Right-click Flexible Body and select New.
    A new entry, Flexible Body 1, is created in the Data Tree under the Flexible Body branch.
  3. Right-click Flexible Body 1, select Rename and type beam as the entity name.
  4. Double-click beam to open the beam detail panel.
  5. Make sure that Equation is set to Mesh Displacement.
  6. Set Number of modes to 5.
    This will import and apply the modal information for the first five modes available in the structural data.
  7. Set the Internal force multiplier function to the function ForceRamp, which you created as an earlier step in the tutorial.
  8. Click Open Refs next to the Surface outputs option.
    The Reference Editor dialog opens.
  9. Add a row by clicking Add Row.
  10. Select beam as the entity in the row from the pull-down menu.

    Figure 18.
  11. Click OK to close the dialog.
    This tells the solver to use the surface output data on the beam surface group to determine forces to be transferred to the flexible body beam.

    Figure 19.

Set Surface Boundary Conditions

Set Parameters for the Inlet

  1. Click BAS in the Data Tree Manager to switch to basic view in the Data Tree.
  2. Expand the Model Data Tree item.
  3. Under Model, expand the Surfaces item, and then expand the inlet surface group.
  4. Double-click Simple Boundary Condition to open the detail panel.
  5. Make sure that the Type is set to Inflow.
  6. Make sure that the Inflow type is set to Velocity and the Inflow velocity type is Cartesian.
  7. Set the X velocity to 10 m/sec.
  8. Set the Turbulence input type to Direct.
  9. Set the Eddy viscosity to 1e-05 m2/sec.

    Figure 20.

Set Parameters for the z_neg and z_pos Surfaces

  1. Expand the z_neg surface group in the tree.
  2. Double-click Simple Boundary Condition to open the detail panel.
  3. Make sure that the Type is set to Slip.
  4. Set the Mesh displacement BC type to Slip
    This setting allows the mesh to slip tangentially along the surface. Using this option requires the surface to be planar.

    Figure 21.
  5. Repeat the above steps for the surface group z_pos.
    You can also choose to Propagate the settings for z_neg surface group to z_pos surface group to ensure they are the same. To do this, right-click the Simple Boundary Condition entity under the z_neg surface group, select Propagate, select the z_pos surface group in the Propagate dialog and click Propagate to finish the propagation step.

    Figure 22.

Set Parameters for the Slip Surface

  1. Expand the slip surface group in the tree.
  2. Double-click Simple Boundary Condition to open the detail panel.
  3. Ensure that the Type is set to Slip.

    Figure 23.

Set Parameters for the Outlet Surface

  1. Expand the outlet surface group in the tree.
  2. Double-click Simple Boundary Condition to open the detail panel.
  3. Ensure that the Type is set to Outflow.

    Figure 24.

Set Parameters for the Cylinder Surface

  1. Expand the cylinder surface group in the tree.
  2. Double-click Simple Boundary Condition to open the detail panel.
  3. Ensure that the Type is set to Wall.

    Figure 25.

Set Parameters for the Beam Surface

  1. Expand the beam surface group in the tree.
  2. Double-click Simple Boundary Condition to open the detail panel.
  3. Ensure that the Type is set to Wall.
  4. Set the Mesh displacement BC type to Flexible body by selecting it from the drop-down menu.
    This setting will move the mesh on this surface group according to the motion of the flexible body.
  5. Set the Flexible body as the beam.
    This instructs the solver to use the flexible body beam as the reference for calculating the mesh displacement of the beam surface group.

    Figure 26.

Define Nodal Outputs

The nodal output command specifies the nodal output parameters, for instance, output frequency, number of saved states etc.

  1. Expand Output, then double-click Nodal Output to open the Nodal Output detail panel.
  2. Set Time step frequency as 2.
    This will save the nodal outputs at every 2nd time step.
  3. Set Output initial condition to On.
    This will instruct the solver to write the initial state of the problem as the first output file.
  4. Check that the Number of saved states is set to zero.
    Setting this option to zero will instruct the solver to save all the solution state files.

    Figure 27.

Create Time History Output Points

Time History Output commands enable you to extract the nodal solution at any point within the domain. In this simulation, you will observe the displacement at the tip of the cantilever beam.
  1. Double-click the Output tree, right-click Time History Output and select New.
    A new entry, Time History Output 1, is created in the Data Tree under the Time History Output branch.
  2. Right-click Time History Output 1, select Rename in the context menu and type Tip_MonitorPoint as the entity name.
  3. Double-click Tip_MonitorPoint to open the Tip_MonitorPoint detail panel.
  4. In the detail panel, change the Type to Coordinates.
  5. Click Open Array next to the Coordinates option and fill in the row in the Array Editor dialog as follows:

    Figure 28.
  6. In the detail panel, set Time step frequency to 1.
    This will save the results for the defined time history point at every time step.

    Figure 29.
  7. Save the database.

Set Initial Conditions

  1. Double-click Nodal Initial Condition in the Data Tree to open the dialog in the detail panel.
  2. Set the X velocity to 10 m/sec.
  3. Set the Eddy viscosity to 1e-05 m2/sec.

    Figure 30.

Assign the Interpolated Motion Surfaces

In this step you will assign the appropriate surfaces as Interpolated mesh motion surfaces so that the mesh bounded by these surfaces will be interpolated based on the motion of these interpolated mesh motion surfaces.

  1. Click ALL in the Data Tree Manager to display all settings in the Data Tree.
  2. Expand Model > Surfaces > beam.
  3. Check the box next to Interpolated Motion Surface.
  4. In the detail panel, for Motion surface type, accept the default option of Faceted.
  5. Similarly, assign the Interpolated Motion Surface for the Slip surface.

    Figure 31.

Create Mesh Motion with Interpolated Motion Surfaces

In the next steps you will define the mesh motion based on the Interpolated surfaces defined in the above step.

  1. Click ALE in the Data Tree Manager to display all settings in the Data Tree.
  2. Right-click on Mesh Motion and select New.
  3. Right-click on Mesh Motion 1 and rename it to Interpolated_mesh_motion.
  4. Double-click on Interpolated_mesh_motion to open the detail panel.
  5. Change the Type to Interpolated Motion.
    Figure 32.

  6. Click Open Refs.
  7. In the Reference Editor, click Add Row twice to create two new rows for the two interpolated motion surfaces just created.
  8. Select the interpolated motion surfaces (beam and slip).

    Figure 33.
  9. Click OK to close the dialog.

Assign Mesh Motion to the Fluid

In this step you will assign the appropriate surfaces as Interpolated mesh motion surfaces so that the mesh bounded by these surfaces will be interpolated based on the motion of these interpolated mesh motion surfaces.

  1. Click BAS in the Data Tree Manager to switch to basic view in the Data Tree.
  2. Expand Model > Volume > fluid.
  3. Double-click Element Set.
  4. In the detail panel, change Mesh motion to Interpolated_mesh_motion.

    Figure 34.
  5. Save the database.

Assign Mesh Controls

Set Global Mesh Parameters

Global mesh attributes are the meshing parameters applied to the model as a whole without reference to a specific geometric volume, surface, edge, or point. Local mesh attributes are used to create mesh generation controls for specific geometry components of the model.

In the next steps you will set the global mesh attributes.

  1. Click MSH in the Data Tree Manager to filter the settings in the Data Tree to show only the controls related to meshing.
  2. Double-click the Global Data Tree item to expand it.
  3. Double-click Global Mesh Attributes to open the Global Mesh Attributes detail panel.
  4. Change the Mesh size type to Absolute.
  5. Set the Absolute mesh size to 2.0 m.
  6. Set the Mesh growth rate to 1.4.

    Figure 35.

Set Surface Mesh Parameters

Surface mesh attributes are applied to a specific surface in the model. It is a type of local meshing parameter used to create targeted mesh controls for one or more specific surfaces.

Setting local mesh attributes, such as surface mesh attributes, is not mandatory. When a local mesh attribute is not found for a component, the global attributes are used as the mesh generation control for that component. If a local mesh attribute is present, it will take precedence over the global setting.

In the next steps you will set the surface meshing attributes.

  1. Expand the Model Data Tree item.
  2. Under Model, expand Surfaces.
  3. Under Surfaces, expand the cylinder surface group.
  4. Click the Surface Mesh Attributes check box to activate and open the detail panel.
    The detail panel becomes populated with more options.
  5. Ensure that the Mesh size type is set to Absolute.
  6. For Absolute mesh size, enter 0.05 m.
  7. Switch the Region of influence parameters flag to On.
    Mesh controls related to influence region from the surface will be visible now.

Region of influence is a size control that allows you to control the size and growth rate of the surface and volume mesh surrounding a surface based on the distance from the surface.

  1. Set the Influence parameters:
    1. Set Influence type to Simple.
    2. Set Influence size factor to 3.0.
    3. Set the Influence distance to 2.0.
    Note: The above settings will ensure that the volume mesh to have a size 0.05 m (Absolute mesh size) at the surface and then transition to a size of (Absolute mesh size) × (Influence size factor) at a distance 2.0 m (Influence distance).
  2. Switch the Boundary layer flag to On.
    Mesh controls related to the boundary layer become available.
  3. Ensure that the Boundary layer type is set to Full Control.
  4. Set Resolve to Total Layer Height.
    This will set the total layer height based on the other settings you provide.
  5. Set the remaining settings as follows:
    1. Set First element height to 0.01.
    2. Set Growth rate to 1.3.
    3. Set the Number of layers to 4.
    4. Set the Boundary layer elements type to Tetrahedron.

      Figure 36.

Instead of repeating the above steps for the beam surface group, you can propagate the mesh attribute settings for cylinder surface group to beam surface group.

  1. In the Data Tree, under cylinder, right-click on Surface Mesh Attributes.
  2. Select Propagate.
  3. In the Propagate dialog, select the beam surface group and click Propagate.

Define Mesh Extrusion

The present simulation is equivalent to a representation of a 2D cross section of the model. In AcuSolve, 2D models are simulated by having just one element across the faces of the cross section. When these faces are set up with a similar boundary condition it coerces the corresponding nodes across the faces to have the same results. In this problem these faces are the negative and positive z-surfaces. This kind of mesh is achieved in AcuSolve with mesh extrusion process. In the following steps, the process of extrusion of the mesh between these surfaces is defined.

  1. Expand the Model Data Tree item.
  2. Right-click Mesh Extrusions and select New from the context menu.
    A new entity, Mesh Extrusion 1, is created.
  3. Rename Mesh Extrusion 1 as z_extrusion.
  4. Right-click z_extrusion and select Define from the context menu.
    Double-clicking z_extrusion achieves the same results.
  5. In the Mesh Extrusion dialog, make the following settings.
    1. Check that the Geometry type is set to surface.
    2. Use the drop-down arrows to select the surfaces for Side 1 and Side 2 as z_neg and z_pos, respectively.
    3. Check that the Extrusion type is set to Number of layers.
    4. Set Number of layers to 1.
    5. Set Extrusion options to Mixed Elements.
    Use the following image for reference for setting up the mesh extrusion.

    Figure 37.
  6. Click OK to close the dialog.

Generate the Mesh

In the next steps you will generate the mesh that will be used when computing a solution for the problem.

  1. Click on the toolbar to open the Launch AcuMeshSim dialog.
    For this case, the default settings will be used.
  2. Click Ok to begin meshing.

    During meshing an AcuTail window opens. Meshing progress is reported in this window. A summary of the meshing process indicates that the mesh has been generated.

    Figure 38.
    Note: The actual number of nodes, elements and memory usage may vary slightly from machine to machine.
  3. Visualize the mesh in the modeling window. Turn on the display of surfaces and set the display type to solid and wire.
  4. You can rotate and zoom in the model to analyze the various mesh regions.

Import Structural Model Information

The next step is to import the structural model and project the eigenvectors onto the CFD mesh.
  1. Click on the toolbar.
    The Eigenmode Manager dialog opens.
  2. Click Add.
    A new entry, Modal Response 1, is created.
  3. Type Modes as the Name for the entry.

    Figure 39.
  4. Click Open next to Import.
  5. In the File Browser dialog, make sure that the file type is set to recognize Nastran OP2 results files.
  6. Select the file beam_modal.op2 and click Open to import the file.
    The Number of available modes should now be 5.
  7. Set the Number of active modes to 5.
  8. Click the Show tab in the Eigenmode Manager, then toggle the Display and Animate buttons On to visualize the modes of the structure.
    Experiment with the Animation mode Id slider to look at the different modes of the structure. You can also change the amplitude, speed and visualization properties of the animation using this panel.
  9. Click the Transfer tab in the Eigenmode Manager.
  10. Click Transfer next to the Flexible body option.
    1. Make sure that beam is selected in the Reference Editor dialog that opens.

      Figure 40.
    2. Click OK to complete the transfer.
      This will transfer the mass, stiffness and damping arrays from the structural model over to the beam flexible body that was created earlier.
  11. Click Transfer next to the Simple BC option.
    1. Select beam from the list in the Reference Editor dialog.

      Figure 41.
    2. Click OK to complete the transfer.
      This will project the eigenvectors of the structure onto the nodes of the surface group beam.
  12. Close the Eigenmode Manager.

Compute the Solution and Review the Results

Run AcuSolve

In the next steps you will run AcuSolve to compute the solution for this case.

  1. Click on the toolbar to open the Launch AcuSolve dialog.
    For this case the default settings will be used. AcuSolve will run using four processors, if available, a higher number of processors may be specified. AcuConsole will generate AcuSolve input files and will launch AcuSolve. AcuSolve will calculate the transient solution for this problem.
  2. Click Ok to start the solution process.

    While computing the solution, an AcuTail window opens. Solution progress is reported in this window. A summary of the solution process indicates that the run has been completed.

    The information provided in the summary is based on the number of processors used by AcuSolve. If you use a different number of processors than indicated in this tutorial, the summary for your run may be slightly different than the summary shown.

    Figure 42.
  3. Close the AcuTail window and save the database to create a backup of your settings.

Post-Process with AcuProbe

AcuProbe can be used to monitor various variables over solution time.

  1. Open AcuProbe by clicking on the toolbar.
  2. In the Data Tree on the left, expand Time History > Tip_MonitorPoint > node 1.
  3. Right-click on mesh_y_displacement and select Plot.
    Note: You might need to click on the toolbar in order to properly display the plot.

    Figure 43.

    The node 1 lies at the tip of the beam. The plot above shows the displacement of the tip of the beam due to the fluid forces as the beam interacts with the flow.

  4. You can also save the plots as an image.
    1. From the AcuProbe dialog, click File > Save.
    2. Enter a name for the image and click Save.
  5. The time series data of the variables can also be exported as a text file for further post-processing.
    1. Right-click on the variable that you want to export and click Export.
    2. Enter a File name and choose .txt for the Save as type.
    3. Click Save.

Post-Process with AcuFieldView

The tutorial has been written with the assumption that you have become familiar with AcuFieldView and basic operations. In general, it will be helpful to understand the following basics:
  • How to find the data readers in the File menu and open up the desired reader panel for data input.
  • How to find the visualization panels either from the Side toolbar or the Visualization panel on the Main menu to create and modify surfaces in AcuFieldView.
  • How to move the data around the modeling window using mouse actions to translate, rotate and zoom in to the data.

    This tutorial shows you how to work with steady state analysis data.

Start AcuFieldView

  1. Click on the AcuConsole toolbar to open the Launch AcuFieldView dialog.
  2. Click Ok in the Launch AcuFieldView dialog.
    You will see that the pressure contours have already been displayed on all of the boundary surfaces with mesh. When results of a transient simulation are loaded in AcuConsole the displayed results correspond to the last time step of the simulation.

    Figure 44.

Set Up AcuFieldView

  1. Close the Boundary Surface dialog.
  2. Click Viewer Options.

    Figure 45.
  3. In the Viewer Options dialog:
    1. Turn off perspective view by deselecting the Perspective check box.
    2. Disable the axis markers by clicking Axis Markers.

      Figure 46.
  4. Click Close to close the dialog.
  5. Click the icon on the toolbar.
  6. Click Background in the Scalar Colormap Specification dialog.

    Figure 47.
  7. Select the color white in the Background Color dialog.

    Figure 48.
  8. Close the dialogs.
  9. Click the icon to turn off the outline display.
    Your model should now look like this:

    Figure 49.

Visualize and Save an Animation of the Beam Displacement

  1. Click to open the Boundary Surface dialog.
  2. Turn off the visibility for the active boundary surfaces.
  3. Click to open the Coordinate Surface dialog.
  4. Create a new coordinate surface at the mid -Z coordinate plane.
    The coordinate surface created is the mid plane between the z_neg and z-pos surfaces.
  5. Change the Coloring to Scalar.
  6. Change the Display Type to Smooth.
  7. Select x-velocity as the Scalar Function to be displayed.
  8. Select Z as the Coord Plane.
  9. In the Colormap, tab change Scalar Coloring to Local.
  10. From the Defined Views menu bar, select +Z as the viewing direction.
    Your model should look like the image below. The visible shape of the beam is its deformed shape at the end of last time step in the simulation.

    Figure 50.
  11. Close the dialog.
  12. Click Tools > Flipbook Build Mode.
  13. Click OK to close the Flipbook Size Warning dialog.
  14. Click Tools > Transient Data .
    The Transient Data Controls dialog opens.

    Figure 51.

    If the Sweep Control in this dialog shows Sweep instead of Build the Flipbook Build Mode is not active. In Sweep mode, you will be able to create and visualize the animation but you will not be able to save it. To be able to save the animation, enable the Flipbook Build Mode.

  15. Drag the time step slider to its left most position. Alternatively, type 0 for the Time Step or Solution Time.
  16. Click Apply.
    The displayed state now corresponds to the initial state of the domain.

    Figure 52.
  17. Click Build.
    AcuFieldView will build the frame by frame animation of the solution progressing through all of the available time steps. You will be able to see the progress in a Building Flipbook dialog.
  18. Click Frame Rate in the Flipbook Controls dialog.
  19. Enter 0.2 seconds for Minimum Time.
  20. Click Close.
  21. Click the icon to play the animation.
    As the animation progresses, you will be able to see the alternating vortices on the top and bottom surface of the beam, causing an oscillating motion in the beam. This oscillating motion is responsible for generation of piezoelectric charge in the top and bottom layers of the beam.
  22. To save the animation click the icon and then click Save.
  23. Provide a file name in the Flipbook File Save dialog and click Save.


In this AcuSolve tutorial you successfully set up and solved an FSI problem, using the Practical-FSI, or P-FSI approach. The modal analysis of the structure (beam) is first done in a structural solver and the results of this modal analysis in the form of a .op2 file are used to represent the structure in AcuSolve. The .op2 file provides the necessary information, such as the mass, stiffness and damping characteristics of the solid body, to AcuSolve. This information, along with the flow field information generated by AcuSolve, is used to calculate the displacement of the beam as it interacts with the flow. You started the tutorial by creating a database in AcuConsole, importing and meshing the fluid portion geometry, and setting up the basic simulation parameters. Then you set up a flexible body to represent the beam, and generated a solution with AcuSolve. Results were post-processed in AcuFieldView where you generated an animation of the beam’s displacement as it interacts with the fluid flow. New features that were introduced in this tutorial include: setting up a Practical FSI simulation (P-FSI) using Interpolated Mesh Motion (IMM), and using Eigenmode Manager in AcuConsole for transferring structural data onto a CFD mesh.