You are on page 1of 36

USER GUIDE

Optimate Version 8.06.002

2013 CD-adapco

Optimate User Guide

ii

Contents

Description. . . . . . . . . . . . Requirements. . . . . . . . . . . New In 8.06 . . . . . . . . . . . Run Modes. . . . . . . . . . . . Design Exploration Mode . . . . Optimization Mode . . . . . . . Pareto Optimization Mode . . . . Design of Experiment Mode . . . Robustness Mode . . . . . . . . Use External Optimizer . . . . . Variables. . . . . . . . . . . . . Design Parameters . . . . . . . Part Swapping . . . . . . . . . Motions . . . . . . . . . . . . Region Physics Values. . . . . . Boundary Physics Values . . . . Base Size . . . . . . . . . . . Field Functions . . . . . . . . . Interface and Capabilities Description Run Mode Tab . . . . . . . . . Variables Tab . . . . . . . . . Definition Mode . . . . . . Removal of Variables . . . . Outputs Tab . . . . . . . . . . Reports Recording . . . . . Recording Modes . . . . . Plots and Scenes Recording . Requirements . . . . . . . Assembly Tab . . . . . . . . . Simultaneous Jobs . . . . . Cores per STAR-CCM+ Job . Macro Insertion Point . . . Macros To Be Inserted . . . STAR-CCM+ Run Options .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

.1 .2 .2 .4 .4 .4 .5 .5 .5 .6 .6 .6 .7 .7 .7 .8 .8 .8 .9 .9 10 10 11 11 11 12 13 13 13 13 13 13 14 14

Version 8.04.012

Optimate User Guide

iii

HEEDS Save Option . . . . . Number of STAR-CCM+ Runs . Check Frequency . . . . . . Maximum Run Time . . . . . Tokens Required. . . . . . . Licensing Options . . . . . . Project Execution Directory . . Execution CAD Directory . . . Image Directory . . . . . . . Macro Directory . . . . . . . Build Project . . . . . . . . Export Project . . . . . . . . Run Tab . . . . . . . . . . . . . Start Local Job . . . . . . . . Kill Local Jobs . . . . . . . . Post Process . . . . . . . . . Print Message File . . . . . . Run Baseline Model . . . . . File Menu . . . . . . . . . . . . Using External Optimizer . . . Always on Top . . . . . . . Hide Messages . . . . . . . Exit . . . . . . . . . . . . Tools Menu . . . . . . . . . . . Set HEEDS Optimate . . . . . Set HEEDS Post . . . . . . . Configure Generic Queue . . . Configure Microsoft Cluster . . Running Jobs . . . . . . . . . . . . Running the Baseline Model . . . . Local Jobs from Optimate . . . . . Local Jobs in Batch . . . . . . . . Linux. . . . . . . . . . . . Windows . . . . . . . . . . Generic Queue Cluster Jobs . . . . Microsoft Queue Cluster Jobs . . . Resuming Jobs . . . . . . . . . . Extending Jobs . . . . . . . . . . Post-Processing . . . . . . . . . . . STAR-CCM+ . . . . . . . . . . . HEEDS POST . . . . . . . . . . File Descriptions . . . . . . . . . . Built Projects . . . . . . . . . . . Running and Completed Projects . . Debugging . . . . . . . . . . . . . Message File . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16 16 17 17 17 17 18 18 18 19 19 19 19 19 19 20 20 20 20 20 21 21 21 21 21 21 22 23 23 24 24 24 24 25 25 26 26 26 27 27 27 28 28 29 30 30

Version 8.04.012

Optimate User Guide

iv

STAR-CCM+ Log Files . . . . . . . . . . . . . . . . . . . . . 30 Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Version 8.04.012

Optimate User Guide

Optimate
Description
Optimate is an add-on for STAR-CCM+ that allows users to setup multiple STAR-CCM+ runs without scripting. It also provides users the ability to perform design exploration, optimization, design of experiment and robustness studies without leaving the STAR-CCM+ environment. Optimate allows users to do the following: Select a run mode based on the goals of the analysis Select variables from an existing simulation file to vary. Variables can be geometry modifications or boundary conditions. Define the values for each variable Select reports, plots, and scenes from the simulation file that will be recorded for each STAR-CCM+ job Run the STAR-CCM+ jobs on a local machine or setup the jobs to be submitted on a cluster Post-process individual cases using STAR-CCM+ or post-process the data from the set of analyses using HEEDS POST Optimate is using HEEDS from Red Cedar Technology to execute, monitor and post-process the sets of jobs created by Optimate. The SHERPA search algorithm is being used for the Optimization mode of Optimate. Optimate is designed to be used when STAR-CCM+ is the only analysis tool in the automation or optimization process. If an additional tool is being used (e.g., Abaqus, Excel, CAD packages) an external optimization package will need to be used. If this is the case, Optimate can help create the necessary batch scripting to run STAR-CCM+. This script usually includes importing a new CAD file, remeshing the geometry, running the analysis and exporting results. A more detailed description of this can be found in the Using External Optimizer.

Optimate User Guide

Requirements
Typically, a simulation file will be loaded in STAR-CCM+ before Optimate is launched. Users should verify that the simulation file produces acceptable results and the required post-processing has already been set up. If a simulation file is not loaded into STAR-CCM+, Optimate will open but users will only be able to start a local job. If Optimate will be modifying geometry, a process must exist in the simulation to robustly mesh the modified geometry. This process will most likely include 3D-CAD, mesh operations, or surface wrapping. When jobs are executed for an Optimate project, each job will be run until the stopping criteria are met within the simulation file. There is an option to clear the solution and start from scratch. Users should be mindful of this and the stopping criteria should be set accordingly. For example, a pipe flow analysis has been converged and run to 200 iterations. Using Optimate the radius of the pipe will be changed, the case remeshed and run. The maximum iterations should be set to a value greater than 200 iterations to allow STAR-CCM+ enough iterations to converge the solution. To build and run Optimate projects, users will need to install the Optimate Netbeans module and HEEDS. The Optimate Netbeans module will need to be installed on the machine that will be used to setup the cases. HEEDS will need to be installed on the machine where the jobs will be executed.

New In 8.06
There have been several enhancements to Optimate for the current release. This section will give a brief introduction of features that have been added or modified in the current version of Optimate, more detail on these features can be found in this documentation under the affected tabs.
CAD Bi-Directionality using CAD-Clients

In connection with the newly released bi-directionality feature of CD-adapcos CAD-Client suite of CAD productivity tools; Optimate and Optimate+ can now manipulate CAD from within the CAD packages themselves. This feature requires that the appropriate CAD-Client is used to transfer the geometry from the CAD package to STAR-CCM+ and the design parameters of interest are selected prior to this. Instructions on how to do this for each CAD client can be found in the appropriate section of the STAR-CCM+ documentation. This release of Optimate supports control of CAD generated in the following CAD packages: CATIA-V5, Inventor,

Optimate User Guide

SolidWorks, NX, Pro-E, and PTC-Creo. Future releases will add support for Spaceclaim. Currently this functionality requires that the study be completed on a local Windows machine as none of the CAD-Clients support Linux installations at this time. It is also not compatible with simultaneous runs or specified project execution directories (see below).
Coupling with HEEDS7.1

For the current version Optimate has been enhanced to couple with the latest released version of Red Cedar Technologys HEEDS software, version 7.1. This modification is largely transparent to the user, however it will require the installation of this version of HEEDS, as there is no backwards compatibility with version 7.0. This will allow for continued development and provide a more robust framework for future enhancements.
Specification of Design Variable Resolution

Users are now able to specify a specific resolution or increment for each design variable. This improvement provides more control over the discretization of the design variables.
Enhanced Post Processing with Model Views

All saved plots and scenes are now available in the post processing suite HEEDS POST. This allows the plots and scenes to be viewed with respect to other optimization data within the same package.
Separate Project Execution Directory

The Optimate project can now be built in a user specified directory. This allows the user to have more control over the directory structure of the Optimate run. Additionally, if the user has a shared directory with the remote compute cluster, the project can be built directly on the remote cluster.
Misc Enhancements and Bug Fixes

Outputs can now be normalized from the baseline run. Documentation now accessible from the Help menu. User can now select Pareto front archive size and has the option to stop on convergence of the Pareto front. Additional flexibility in setting up parallel runs on remote clusters. Plots and scenes with the same name are not overwritten.

Optimate User Guide

Run Modes
Optimate can be run in multiple ways. The appropriate run mode is selected based on the goals of the analysis as described below. Choosing the appropriate mode will determine how many STAR-CCM+ runs are executed and how the inputs for each run are determined.

Design Exploration Mode


In Design Exploration mode the values for the variable are supplied by user before the job is started. This mode is applicable when replicating test results, creating aerodynamics loads databases, compressor maps or any application when the configuration for each job is known a priori. There is no optimization taking place in Design Exploration mode. The variables used in Design Exploration mode must be defined using the Minimum, Maximum, N method or a CSV file.
Use CSV File

A CSV file can be used to define variable values when using Design Exploration mode. Users will be prompted to select the CSV file to use when they select the check box. The CSV file used must contain a header row for each column. To stop using the CSV file, uncheck the box. Running in Design Exploration mode requires either the STAR-CCM+/Optimate or STAR-CCM+/Optimate+ products and related licensing features.

Optimization Mode
In Optimization mode the input values are selected by the optimization algorithm to meet the specific goals of the analysis. Possible goals include minimizing pressure drop, maximizing outlet uniformity, minimizing component temperatures, and minimizing stress. The user is able to define the minimum and maximum value for each variable and the search algorithm is allowed to choose any value within the bounds during the analysis. The optimization algorithm being used is the SHERPA search algorithm by Red Cedar Technology. The variables used in Optimization mode must be defined using the Minimum, Maximum, Resolution/Increment method. In Optimization mode, users must define at least one objective. If multiple objectives are defined, a linear weighting will be used to combine the objectives. Because the weighting of possibly competing objectives is

Optimate User Guide

defined a priori, running an analysis in Optimization mode with return one best design. Running in Optimization mode requires the STAR-CCM+/Optimate+ product and related licensing features.

Pareto Optimization Mode


Pareto Optimization is a formulation for investigating multi-objective optimization problems. It is particularly well suited when the two objectives are competitive in nature. In such cases there is no single optimum design. Rather there is a curve along which all designs are Optimum in one objective for a given value in the other. This is called non-dominated sorting. The resulting curve is referred to as Pareto Front and it defines the optimum trade-off relationship between two objectives. In Pareto Optimization mode, the weighting for competing objectives does not need to be defined a priori. The study will return a set of all optimal designs that lie on the Pareto front. The optimization algorithm being used is the MO-SHERPA search algorithm by Red Cedar Technology. The variables used in Pareto Optimization mode must be defined using the Minimum, Maximum, Resolution/Increment method. Running in Pareto Optimization mode requires the STAR-CCM+/Optimate+ product and related licensing features.

Design of Experiment Mode


The Design of Experiment mode can be used for local exploration around a particular design. A user will supply variable values using the Minimum, Maximum, Resolution/Increment method and Optimate will use Design of Experiment sampling to determine what cases to run as a training set to fit a response surface. The sampling method used is Latin hypercube. Running in Design of Experiment mode requires either the STAR-CCM+/Optimate or STAR-CCM+/Optimate+ products and related licensing features.

Robustness Mode
Robustness mode is used to determine whether a particular design is affected by minor variations in selected input values due to installation or manufacturing tolerances. The user specifies a probability distribution

Optimate User Guide

which is applied to the inputs and the distribution of the outputs can lead to insights about the robustness of the design. The variable values using in Robustness mode are defined using the Value, Distribution mode where the user can specify either a Gaussian or uniform probability distribution. Running in Robustness mode requires either the STAR-CCM+/Optimate or STAR-CCM+/Optimate+ products and related licensing features.

Use External Optimizer


This run mode can be selected from the File menu. In this mode, Optimate is being used to generate the batch script, input file, example output file and process file. When this mode is selected, other variables cannot be created and the job cannot be started from Optimate. Users will be prompted to select the part in STAR-CCM+ that will be replaced and a sample CAD file that will be created at run time by the upstream CAD process in the optimization analysis loop. After building the project, users will need to use the created files and their external optimizer to place STAR-CCM+ in the analysis loop. The job will be submitted and post-processed using this external tool.

Variables
Optimate allows users to identify which variables to create from an existing simulation file. These variables can be either geometry modifications or boundary conditions. For this release, the support variables can be found below.

Design Parameters
CAD models that have been modified and/or created in 3D-CAD and have design parameters defined can be modified using Optimate. Changing design parameters and pushing the modified geometry through the meshing pipeline will require Optimate to remesh the geometry. Users should be aware of this for memory considerations. Changing a design parameter such that the geometry becomes invalid will result in a failure for the analysis. Variables can be created from the following design parameters: Scalar quantities Translation components

Optimate User Guide

Scalar quantities include distances, radii, extrusion lengths, and taper angles. For translation variables, Optimate will attempt to also translate a coordinate system with the same name as the current design parameter. This feature is useful if a rotation needs to be performed after the translation is done. It is important to create the translate variable(s) first before any rotation variables. In this release, geometry that is created in an external CAD package cannot be modified by Optimate. However, geometry that is created externally and modified in 3D-CAD can be optimized.

Part Swapping
Parts can be variables if they have been created from an imported CAD model. Only parts that have been imported directly into the parts tree will populate the parts for swapping drop down menu. Users will be able to identify a list of CAD files to be used to replace the current part. User must supply at least two CAD files. Swapping a part that causes a mesh operation to return an invalid result will cause that specific analysis to fail. With a part swapping variable, it is necessary to provide the execution CAD directory.

Motions
Motion variables are created from defined motions in the simulation file. If a user is using reference frames for boundary conditions the variables will not be created. Users must create a motion and use the automatically created reference frame as the boundary condition for the region. Variables can be created from the following motion types: Rotation rate Translational velocity

Region Physics Values


The following region physics values that have their method set to Constant will have variables available: Volumetric heat source

Optimate User Guide

Boundary Physics Values


The following boundary physics values that have their method set to Constant will have variables available: Velocity magnitude Mass flow rate Static and total temperature Static and total pressure Mach number Flow angles Mass fractions Wall roughness Turbulence scalars Thermal scalars
Flow Angles

Variations of inlet flow angles will attempt to modify a local Cartesian coordinate system named wind. Users must create this coordinate system in the original simulation file and align it so that flow with zero pitch angle, zero roll angle and zero yaw angle is aligned along the positive X axis. Pitch, yaw and roll are defined as rotations about the Y,Z and X axis respectively. All reports that should remain relative to the wind coordinate system should reference the wind coordinate system.

Base Size
Mesh dependency studies can be performed by creating variables from the base size in a mesh continua.

Field Functions
Variables can be created from user field functions in a simulation file. The field function must be a scalar field function and its definition must be only numeric. Examples of allowable definitions: 10 -1.312

Optimate User Guide

Examples of invalid definitions $$Centroid[1] abs(1.2) sin($Time) Field functions with invalid definitions will not appear in the field function variable drop down menu.

Interface and Capabilities Description


Optimate is split into five tabs: run mode, variables, outputs, assembly and run. The tabs are arranged in order of how users should setup cases, starting with the variables tab and ending with the run tab.

Run Mode Tab


This is where a user picks the run mode for the analysis. Users can select from the following modes: Design Exploration Optimization using SHERPA Pareto Optimization using MO-SHERPA Design of Experiment Robustness In the case of Pareto Optimization, two additional options are exposed to the user: 1. Set Archive Size: This is the desired number of non-dominating designs in your Pareto front or trade-off curve. A larger archive size typically produces better resolved trade-off curves, but only if the number of evaluation is increased as well. As a general rule, the optimal archive size can be calculated as: Number of evaluations / 100 2. Stop on Pareto Convergence?: Checking this option forces the optimization run to stop as soon as the Pareto front is converged. If the Pareto front does not converge, Optimate will carry out the number of evaluations as specified in the Assembly Tab. In order to change the run mode after variables or outputs have been created, the variables and outputs will be cleared. The user will prompted before this action is completed.

Optimate User Guide

10

Variables Tab
This is where a user identifies what variables in the simulation file should be varied during the analyses. By choosing the applicable variable from a drop-down menu and pressing the Add button, it will be added to the list of variables to be modified. Definition Mode The next step is to define the values that will be used for that variable. Users can select from the following modes: Minimum, Maximum, N Minimum, Maximum, Resolution/Increment List CSV File Column Value, Distribution Geometry Files The exact modes that are visible will depend on the selected run mode and selected variable type.
Minimum, Maximum, N

Users will specify a minimum value, maximum value, and number of increments. For example, if a user specifies a minimum of two, a maximum of ten and five increments, a run will be completed for the values of two, four, six, eight, and ten. When running in Optimization mode, this definition method must be used. The optimization algorithm will use the minimum and maximum value as bounds for the variable and select values between the two values.
Minimum, Maximum, Resolution/Increment

Users will specify a minimum value and maximum value. This mode is used for optimization and Design of Experiment modes where the search algorithms will be selecting the exact values to use between the provided bounds. Users can also control discretization of the variable by specifying

Optimate User Guide

11

the resolution or increment value of the variable.


List

Users will supply a comma separated list of values to use. Optimate will run a case for each value in the list. This is useful if the values are not evenly spaced.
CSV File Column

Users will choose a column from an imported CSV file. This file was imported in the run mode tab. Once imported a user can choose a column to supply values for a given variable. This option is only available in Design Exploration mode and cannot be used for part swapping variables.
Value, Distribution

Users will define a distribution type, value, and either standard deviation or maximum variation. During run time, input values will be chosen to fit the specified probably distribution. This option is only available in Robustness mode.
Geometry Files

For variables created for part swapping users can specify geometry files to swap with the current part. Removal of Variables Variables can be removed by selecting it and right-clicking and selecting Delete or selecting the Delete button.

Outputs Tab
This is where a user defines what outputs should be recorded during the analysis. Reports Recording Reports from the simulation file can be recorded at the end of each analysis by Optimate. Reports can be added individually using the Add button or all at once using the Add All button.

Optimate User Guide

12

The values used for the reports will always be in the units specified in the report properties in the simulation file. Recording Modes Once a report has been added to the list of recorded reports, changing its run mode will change how HEEDS treats the value exported from STAR-CCM+. The recording mode for each recorded report can be set to the following: Output Objective Constraint
Output

For this recording mode, HEEDS will only record the value of the report.
Objective

For this recording mode, HEEDS will use this report value to judge how this design is performing relative to previous designs. For each objective the user sets a goal, normalization and linear weight value. The goal can be set to Minimize or Maximize. The normalization is important if there are multiple objectives and it should be set such that all objectives are the same order of magnitude. The Use Baseline check-box can be used to automatically set the normalization values for each variable by using the baseline run. The linear weight is important if there are multiple objective and determines how the objectives will be combined to determine the performance of each design.
Constraint

For this recording mode, HEEDS will use this report value to determine if this design is feasible or infeasible. If a particular set of inputs creates an infeasible design, HEEDS will avoid this part of the design space in subsequent analysis. For each constraint the user sets the type and limit. The type can be set to Less Than or Greater Than and the limit is set to the value which cannot be exceeded or below. For example, if a user created a constraint based on a drag report, set the type to Less Than and the limit to 300, any analysis with a converged value higher than 300 would be considered infeasible.

Optimate User Guide

13

Plots and Scenes Recording Users can also define which plots and scenes should be saved at the end of each STAR-CCM+ run. Plots and scenes can be added individually using the Add button or all at once using the Add All button. The directory to which the images are placed will be defined in the assembly tab. Requirements For all analysis at least one report must be recorded as either an output, objective or constraint. For cases run in Optimization mode, there must be at least one objective and for cases run in Pareto Optimization mode there must be at least two objectives. It is recommended that objectives be defined for Design Exploration mode as HEEDS can sort the results according to the performance of the analyses.

Assembly Tab
This tab is used to define how the STAR-CCM+ jobs will be run. Simultaneous Jobs This number defines how many jobs will be executed at once. This number should be as small as practical when running in Optimization mode. The HEEDS optimization algorithm (SHERPA) works best when it can learn as many times as possible. If you are running 100 cases in total in blocks of twenty-five at a time, SHERPA can only learn three times. If you are running those same 100 cases in blocks of two, SHERPA can learn forty-nine times and can perform much better. Cores per STAR-CCM+ Job This defines how many cores each STAR-CCM+ job will be run on. Macro Insertion Point Allows the user to identify the desired insertion point for custom macros into the StarDriver.java macro. The Insert Macro STAR-CCM+ Run Option must be selected to enable this portion of the Assembly Tab.
Before Meshing

Updates the Macros To Be Inserted list to display macros selected to be inserted immediately before the execute meshing pipeline command is executed in StarDriver.java.

Optimate User Guide

14

After Meshing

Updates the Macros To Be Inserted list to display macros selected to be inserted after the simulation mesh has been generated but prior to running the solver.
After Running

Updates the Macros To Be Inserted list to display macros selected to be inserted immediately after the solver has been completed and before any results (reports, scenes, and plots) are returned to HEEDS. Macros To Be Inserted This list displays user selected macros to insert into the StarDriver.java file at the location specified by the Macro Insertion Point selection. Users are to browse to the location of the desired macros and insert them into the desired list. The order that they are displayed in the list represents the order that they will be played in the specified insertion point. The same macro cannot be played more than once at a given insertion point, but may be played again at a different insertion point. It is a requirement that any macro to be inserted meet all the requirements necessary to play a macro directly in STAR-CCM+. For this reason it is recommended that even if the user is writing their own macro they record a shell of it in STAR-CCM+ and modify this file to reflect the full set of instructions. It is also recommended that the user ensure their macro will execute manually in STAR-CCM+.
Remove Macro

This button removes the selected macro in the currently displayed Macros To Be Inserted list.

STAR-CCM+ Run Options The following options will determine how STAR-CCM+ jobs are submitted, executed and saved.
Re-mesh Required

This will be checked if any variables were created from a design parameter or for part swapping.

Optimate User Guide

15

Remove Invalid Cells

When selected STAR-CCM+ will execute the remove invalid cells command on each individual job submitted. This is advisable if it is determined that the mesh settings in the base sim file might occasionally generate invalid meshes. This is more likely for projects where widely varying geometries are being generated and when the surface wrapping is being used on complex geometry.
Convert to 2D

When selected the project will convert each submitted job into a 2D problem. All of the same restrictions for running 2D cases in STAR-CCM+ apply when running Optimate analyses in 2D. The mesh must have a face aligned with the X-Y plane. The physics continua, interfaces, and reports will automatically be updated to the appropriate forms for 2D simulations. Any scene selected in the output tab will automatically be updated such that the displayer parts are the newly created 2D regions.
Save all Simulation Files

When this option is activated the save command will be added to StarDriver.java macro which is executed for each simulation in the analysis. The result is that any star_0/Design<N>/star/ (where N is the design number) directories retained by HEEDS will contain the completed sim file and any other simulations file (e.g. *.trk) for that particular simulation. Note that if the simulation has the auto save batch runs activated in the File>Auto Save menu then a sim file will be retained even if this option is deactivated. It is advisable to check this setting (activated as default in STAR-CCM+) before starting the project.
Clear Solution

Checking this box will clear the current solution in STAR-CCM+ before running each case. By leaving this box unchecked STAR-CCM+ will use the existing solution as a starting point which can significantly reduce the iterations required to reach a converged solution.
Insert Macro

Checking this box will activate the macro insertion portion of the Assembly Tab allowing the user to insert custom recorded or written macros into the StarDriver.java macro used to execute each STAR-CCM+ simulation.

Optimate User Guide

16

Use Windows Queue

This allows HEEDS to submit the jobs using a Windows Scheduler that can be configured in Tools > Configure Microsoft Cluster.
Use Linux Queue

This allows HEEDS to submit the jobs using a generic queuing system that can be configured in Tools > Configure Linux Queue. HEEDS Save Option
Last Best Design

This option is only available when the Run Mode is set to either Optimization using Sherpa or Pareto Optimization using MO-SHERPA. When selected this option instructs HEEDS to remove all design directories with the exception of that identified as the best design based on the specified objectives.
Save All Best

This option is only available when the Run Mode is set to either Optimization using Sherpa or Pareto Optimization using MO-SHERPA. When selected this option instructs HEEDS to remove all design directories with the exception of those that were identified as the best design during the history of the project run. As an example the first run of an Optimization project will always be the first best design identified, subsequently as the HEEDS identifies improved designs it will no longer be the best design. With this option turned on however the directory for the first design will be retained because it was identified at one point as the best design.
All Designs

When selected this option instructs HEEDS to retain all design directories.
None

When selected this option instructs HEEDS to remove all design directories after the outputs of a completed simulation (report values, plots, scenes) has been extracted. Number of STAR-CCM+ Runs The number of runs is determined by the number of variables and how many values will be used for each variable in Design Exploration mode. In Optimization mode, the value is set by the user based on how many cases

Optimate User Guide

17

there is time to run. For a Pareto optimization problem at least forty cases must be run. Check Frequency This number determines how often HEEDS checks each STAR-CCM+ job to see if it has finished. By default it will check every 360 seconds but this should be modified according to the expected run times. Maximum Run Time This number determines how long HEEDS will wait for one job to be completed before submitting the next one. By default it will wait 360,000 seconds before submitting the next job. This should be modified to be only slightly longer than the job should take to run, but it is important to keep queue times and possible solver slowdowns in mind. Tokens Required Multiplying the number of simultaneous jobs by the number of cores per job will determine how many Power Tokens will be required to run. Please be aware that if using a cluster, this number will not reflect the correct amount of tokens unless you change the cores per STAR-CCM+ job to reflect the command provided in the queue configuration window. Licensing Options During run time, Optimate jobs will use with an Optimate or Optimate+ license as well as the necessary licenses for starting STAR-CCM+ jobs. In this release, existing STAR-CCM+ license features can be used in addition to Power Tokens and the options below allow users to control how licenses will be checked out.
Use Power Tokens

This is the default licensing scheme for Optimate. Optimate will check out Power Tokens for each STAR-CCM+ job based on the number of cores each job will be run on.
Use Power Sessions

This will allow Optimate to check out a Power Session for each STAR-CCM+ run.

Optimate User Guide

18

Use Power on Demand

This will allow Optimate to check out a Power Session from the CD-adapco FlexLM server. Users will be prompted for a Power-on-Demand key. The license server is set to 1999@flex-cd-adapco.com. However, this can be changed manually by modifying the Process1.in file after building the project.
Use Serial and HPCs

This will allow Optimate to check out STAR-CCM+ session licenses and HPC licenses for each STAR-CCM+ run. Project Execution Directory This should be set to the directory where the project files are to be written. The project will run in this directory as well. If the case is to be run on a remote cluster, just this directory needs to be copied over. The directory can be set by browsing the local file system or manually if the run directory is not currently mounted. Relative paths are acceptable when manually setting this directory. Execution CAD Directory This only needs to be modified if a variable is created for a part swap. By default, the directory is set assuming that the CAD files exist in the same directory as the original simulation file. If this is not the case, the directory needs to be changed. The directory can be set by browsing the local file system or manually if the run directory is not currently mounted. Relative paths are acceptable when manually setting this directory. Image Directory This should be set to the directory where the plot and scene images should be saved. By default it will place all of the images in the same directory as the original simulation file. It is recommended that a new directory is created for all of the images. The directory can be set by browsing the local file system or manually if the run directory is not currently mounted. Relative paths are acceptable when manually setting this directory.

Optimate User Guide

19

Macro Directory This only needs to be modified if a macro has been selected for insertion into StarDriver.java. And represents the location where STAR-CCM+ will go to find all macros. The directory can be set by browsing the local file system or manually if the run directory is not currently mounted. Relative paths are acceptable when manually setting this directory. Build Project Pressing the Build Project button will write all the files necessary to execute HEEDS for the job defined in the previous three tabs. It will also modify and save the simulation file to allow the use of the Power Token licensing scheme. All of the files will be written to the same directory as the original simulation file. If running the job on a cluster, all of the written files must be copied to the cluster file system. Export Project Pressing the Export Project button will write an XML file (extension will be .optxml) containing all current project data to a user specified file and location. This file can then be used to create a loaded project at the time Optimate is launched in a future session. Additionally this file can be used to interact with external optimizers.

Run Tab
The run tab is used once the project has been built to start local jobs, kill local jobs, post-process, view the message file and run the baseline analysis. Start Local Job Once the project is built, HEEDS can be started on the local machine by pressing the Start Local Job button. This will close the current server process and execute HEEDS in the background. The output from HEEDS will be visible in the output window. Kill Local Jobs Once a local job has been started, pressing the Kill Local Jobs button will kill all HEEDS_Optimate processes on the local machine. Please note that

Optimate User Guide

20

STAR-CCM+ jobs started by Optimate will continue to run until completed or killed. Post Process Once a local job has completed, pressing the Post Process button will launch HEEDS POST to post-process the results. HEEDS POST can also be launched outside of Optimate to view the results. Print Message File Pressing the Print Message File button will print the contents of the HEEDS message file to the output window. This file contains information about the HEEDS job and can be useful for debugging jobs that fail to start. Run Baseline Model Pressing the Run Baseline Model button will start a local STAR-CCM+ job using the simulation file that Optimate was started with. The job will be started using the configuration and licensing chosen in the assembly tab.

File Menu
The file menu can be used to select the Use External Optimizer run mode and control the Optimate window. Using External Optimizer Checking this option will choose the Use External Optimizer run mode. All variables current created will be deleted and a new window will appear where users will define which part will be replaced during the optimization analysis loop.
Part for Replacement

The user selects which part will be replaced at run time with a new CAD file.
Sample CAD File

This is the CAD file that the selected part will be replaced with. At this point in the process, the CAD file could be empty, only the name and relative location are important.

Optimate User Guide

21

Once the user selects the OK button, only the Output and Assembly tabs will be available. The user will select outputs and configure each run and build the project. Always on Top Checking this option will tell the Optimate frame to site in front of all other windows. This can be useful because Optimate will fall to the back if the mouse is moved over a plot or scene in STAR-CCM+ and when a local job is started. Note, that this option should not be selected when browsing to files and directories as the Optimate frame will remain on top of the File chooser window. This option will be remembered when Optimate is started in the future. Hide Messages By default, messages related to incorrect inputs and execution errors will create pop-up menus that the user must close. If this box is checked, the messages will instead be printed to the STAR-CCM+ output window. This option will be remembered when Optimate is started in the future. Exit This will close down the Optimate interface, however the license that was used to start Optimate will not be released until the server is shutdown.

Tools Menu
The tools menu can be used to control the external programs that Optimate is calling and to configure cluster setups. Set HEEDS Optimate This is used to set the HEEDS Opimate executable for local jobs. Users will be prompted to set this the first time Optimate is started and it can be modified if needed. Set HEEDS Post This is used to set the HEEDS POST executable for launching HEEDS POST from Optimate. Users will be prompted to set this the first time Optimate is started and it can be modified if needed.

Optimate User Guide

22

Configure Generic Queue This will bring up a window to setup the commands to run on a generic queueing system. The defaults reflect the commands to run on a Linux cluster running OpenPBS. The values should be modified to reflect the configuration that users plan on running on. Two methods are now available
Use Generic Scheduler

This method requires the following information Job Submit This is the command that is used to submit each job on the cluster. The default value is setup for a cluster running OpenPBS where each job is submitted on one node running four cores per node. Please note that modifying the number of nodes per job and cores per node will not affect the number of Power Tokens displayed in the assembly tab. However, it will affect the number of Power Tokens required to run. Job Name Specifier This is the command that is used to identify the name for each submitted job. The default value is setup for a cluster running OpenPBS. Command to Execute STAR-CCM+ This is the command that is given for each submitted job. By default each job will be started by executing the contents of the shell script ./ccmprun.csh. This shell script needs to be created by the user for a specific machine. Requirements for the contents of the shell script can be found here.
Direct Parallel Execution

This method requires the following information Command to submit job to cluster This is the exact command that a user would enter into the command line to start a STAR-CCM+ simulation minus any files associated with the submission. Typically this will be the command to submit to a job scheduler. As an example a user might directly launch STAR-CCM+ via the command line which could include
starccm+ -np 3 -batch StarDriver.java

Optimate User Guide

23

followed by the simulation file. The above command would be entered into the Command to submit job to cluster text box. Alternatively a user might use a scheduling tool and a script to submit a job. In this case everything but the script file itself is included in the Command to submit job to cluster text box. As an example using OpenPBS the user would include
qsub -l nodes=1:ppn=8

in the Command to submit job to cluster text box. Run Script This is the name of any file needed in addition to the command given the Command to submit job to cluster text box. For the first example above this box would contain
<simulation file name>.sim

with the appropriate simulation file name. For the second example it would contain the run script name. The file specified here is copied from the project directory to the directory created by HEEDS to launch the individual design variant. The complete command executed by HEEDS from this directory is the combined command from both this box and the Command to submit job to cluster text box. Configure Microsoft Cluster This will bring up a window to setup the commands to run on a Microsoft cluster. The values should be modified to reflect the configuration that users plan on running on.
Job Submit

This is the command that is used to submit each job on the cluster.
Job Name Specifier

This is the command that is used to identify the name for each submitted job.

Running Jobs
Optimate can setup cases to run locally on the same machine that is setting up the job or on a cluster. STAR-CCM+ is called with the following command on Windows:

Optimate User Guide

24

starccm+.exe

or on Linux:
starccm+

In order for the above commands to work, the path environment variable must be set to launch the correct version of STAR-CCM+. The full path can be inserted into the Process1.in file if it is not possible to change the path.

Running the Baseline Model


The baseline model can be run either directly from the run tab using the Run Baseline Model button or the command can be copied and pasted to a command prompt. This is useful if the model needs to be run using Power Tokens as the necessary command line flags are shown.

Local Jobs from Optimate


Local jobs can be start through Optimate using the Start Local Job button in the run tab. Optimate must be open to start a local job. If the project is being built in the same session, this is straightforward. If the project has already been built in another session, users will need to load the original simulation file again, start Optimate, navigate to the run tab, and press the Start Local Job button. The project will not need to be built again. If the previous HEEDS job did not exit correctly, users will be prompted to delete the lock file. The extension of the UserDesigns0_Initialize will be changed from .in_backup_at_0_evals to .in.

Local Jobs in Batch


Jobs can also be submitted in batch by executing HEEDS from the command line. Users will need to navigate to the directory that contains the original simulation file and the project files. If the previous HEEDS job did not exit correctly, users will need to delete the lock file named star0.lock and also change the extension of the UserDesigns0_Initialize file back to .in. Linux On Linux machines, execute the following command:

Optimate User Guide

25

PATH_TO_OPTIMATE/HEEDS_Optimate7.0 i=Agent_Group_1.in overwrite skipEvalCheck

Substitute the path to reflect the local installation. Windows On Windows machines, execute the following command:
PATH_TO_Optimate/HEEDS_Optimate7.0.exe i=Agent_Group_1.in overwrite skipEvalCheck

Substitute the path to reflect the local installation.

Generic Queue Cluster Jobs


To submit jobs on a cluster with a generic queuing system, all of the project files must be copied to the users run directory on the cluster file system. HEEDS must be installed on the cluster as well as the correct version of STAR-CCM+. When setting up a generic queue case, Optimate will create an additional file named optimate.txt. The file contains an ID flag that must be passed to STAR-CCM+ to access the Power Token licensing scheme. This ID must be incorporated into the schell script that is used to call STAR-CCM+ that is identified in the setup. For example, a variable is created as follows:
set UUID=cat optimate.txt

This variable is passed to STAR-CCM+ via the command line option:


-doeuuid $UUID

Optimate is also creating the batch script to run STAR-CCM+. The name of this file is StarDriver.java and this also needs to be passed to STAR-CCM+ via the command line option:
-batch StarDriver.java

By default, Optimate will submit a job that executes the following command:
./ccmprun.csh

At a minimum, the called schell script should contain:


#!/bin/tcsh set UUID=cat optimate.txt starccm+ -doeuuid $UUID -batch StarDriver.java -np 2 test.sim >>& test.log

Optimate User Guide

26

It is likely that this will need to be appended to include machine information related to the specific cluster being used. It should also be noted that the command that executes STAR-CCM+ is back-grounded. This is necessary for HEEDS to function correctly. When submitting the job, use the following command on the head node of the cluster:
PATH_TO_OPTIMATE/HEEDS_Optimate i=Agent_Group_1.in overwrite skipEvalCheck

Substitute the path to reflect the local installation.

Microsoft Queue Cluster Jobs


To submit jobs on a cluster with a Microsoft queuing system, all of the project files must be copied to the users run directory on the cluster file system. When submitting the job, use the following command on the head node of the cluster:
PATH_TO_OPTIMATE/HEEDS_Optimate.exe i=Agent_Group_1.in overwrite skipEvalCheck

Substitute the path to reflect the local installation.

Resuming Jobs
If a job aborts for any reason and needs to be resumed, the job can be started and will pick up from the last completed design using the following command line:
PATH_TO_OPTIMATE/HEEDS_Optimate.exe i=Agent_Group_1.in useHistory skipEvalCheck

Note: this can only be done from the command prompt and not via the Optimate interface.

Extending Jobs
If a job completes but further designs are needed to achieve the desired results, the job can be continued. First, the number of jobs must be increased in the Agent_Group_1.in file. An example of the last three lines of this file are below:
$Start Agent ID, End Agent ID, Number of Designs Evaluated

Optimate User Guide

27

0, 0, 20 *END

In this example, the original number of design evaluated was twenty. If twenty additional runs are required, the second to last line should be modified to:
0,0,40

The file is then saved and the following command is given to extend the job:
PATH_TO_OPTIMATE/HEEDS_Optimate.exe i=Agent_Group_1.in skipEvalCheck

Note: this can only be done from the command prompt and not via the Optimate interface.

Post-Processing
Once a series of jobs have completed the results can be post-processing either further in STAR-CCM+ or using HEEDS POST.

STAR-CCM+
If a user selected to save all simulation files, individual simulation files can be found in the following directories:
star_0/DesignN/star/

Where N is the design ID for each job. Each simulation file will be appended with a three digit design ID so that they can all be copied into the same directory for archiving but still reference the ID for post-processing in HEEDS POST.

HEEDS POST
HEEDS POST can be started from Optimate or outside of Optimate. Please refer to the HEEDS POST documentation for more information. This can be found in the installation directory of HEEDS POST.

Optimate User Guide

28

File Descriptions
The file descriptions are given below to aid in debugging cases that are not executing as expected.

Built Projects
When an Optimate project is built, the following files can be found in the same directory as the simulation file.
Agent_Group_1.in

This file contains information about the run mode and the number of runs to be completed.
Assembly.in

This file contains information about the run mode.


Definitions.in

This file contains information variables that will be changed at run time. The name of the variable, the minimum value, the maximum value and the baseline value can be found here.
M_{SIM FILE NAME}.in

The file tells Optimate how to modify the input file for each run such that STAR-CCM+ runs using the updated variable values.
Performance0.in

This file contains information about the outputs, objectives and constraints for each project and tells Optimate where it can find these values after each STAR-CCM+ job has completed.
{SIM FILE NAME}.in

This file contains the variable names and values that will be read by STAR-CCM+ at run time. This file is copied to the design directory at run, modified with the new values by Optimate and the STAR-CCM+ batch script will read this file and update the fields in STAR-CCM+ before running the analysis.

Optimate User Guide

29

{SIM FILE NAME}.out

This file is written by each STAR-CCM+ job at completion and contains the values of the outputs that will be read by Optimate. If the STAR-CCM+ analysis does not complete successfully, this file will not be written and Optimate will mark the analysis as a failure.
Process1.in

This file contains the command to start each STAR-CCM+ analysis (either via a queuing system or directly), information about how often to check for completion and the named files to by copied into each design directory.
Representation0.in

This file contains information about the resolution of each variable.


star.hds

This is an empty file that is used to load the results into HEEDS POST.
StarDriver.java

This is the batch script that each STAR-CCM+ job will execute. It is responsible to reading the input file, adjusting parameters in STAR-CCM+, remeshing if necessary, running the analysis and exporting the results.
UserDesigns0_Initialize.in

This file is only written for analysis run using Design Exploration mode. It contains the value of each variable to be used for each STAR-CCM+ job.

Running and Completed Projects


The following additional files can be found in the directory where are project is running or has completed.
Agent_Group_1.mes

The file is the output from the Optimate process and contains information about when each STAR-CCM+ job is started and completed. If there are any errors parsing the other input files, a detailed message can be found here.

Optimate User Guide

30

star0.gph star0.hst star0.res star0.rpt

These are the post-processing files that are loaded into HEEDS POST. If a project is run on a computer that does not have HEEDS POST, these four files and the star0.hds file must be copied to the machine with HEEDS POST.
star_0/

This directory is created at run time and contains all the design directories.

Debugging
Information regarding failed jobs can be found in the files written by HEEDS and STAR-CCM+.

Message File
During an Optimate run, HEEDS is always writing to the Agent_Group_1.mes file. This file is in the directory with the original simulation file. If there are any errors parsing the project files written by Optimate it will be documented here. These errors can include: Licensing error Check CDLMD_LICENSE_FILE variable Ensure license server is running Error executing STAR-CCM+ Check command in Process1.in file

STAR-CCM+ Log Files


During an Optimate run, HEEDS is creating directories for each STAR-CCM+ job. The directory for each run can be found in the directory named:
star_0/DesignN/star/

Where N is the design ID of each job starting at one and ending with the number of jobs to be run. If the Save all Simulation Files box is checked, these folders will not be deleted and will persist after the run is complete. If the box is unchecked, these directories will only persist during the run. If any job fails it will be placed in a directory named:

Optimate User Guide

31

star_0/DesignN-ERROR/star/

The above directories will contain all of the input files, outputs files, a log file, and the simulation file for each run. If STAR-CCM+ fails, an error message will be in the star.log file. Errors can include: Error getting appropriate licenses Change number of simultaneous jobs in Process1.in file Change number of core per STAR-CCM+ job in Process1.in file Check CDLMD_LICENSE_FILE variable Ensure license server is running Error modifying 3D-CAD model Change values to avoid invalid geometry Error meshing Check mesh settings in original simulation file Floating point error Review solver settings Review initial conditions from original simulation file Error importing CAD files Check directoryCAD variable in StarDriver.java file Error exporting scenes Check directoryPOST variable in StarDriver.java file Error saving simulation file Check for specific cause at end of log file Incompatible version error The path environmental variable needs to be modified such that the correct version of STAR-CCM+ is listed first in the path

Known Issues
If a job fails due to a licensing failure, Optimate will continue to wait for this job to complete. Optimate will wait until the maximum time is reached before submitting the next job. Optimate Frame will fall behind STAR-CCM+ window when the mouse hovers over an open STAR-CCM+ scene. The Always On Top option in the File menu prevents this from happening, but the Optimate Frame will now

Optimate User Guide

32

prevent file browsing, and message widows from Optimate from being on top of itself. In some Linux environments the current version of HEEDS Post will fail update the UI when a user selects to deselects a check box option. The change is reflected in the concerned graph, plot, table, etc...

You might also like