Click here to return to top level Jetstream Merge Notes page.
Group Members Who Contributed to this Jetstream Code Update
Tim Chau
Gregg Streuber
Tom Reist
Summary of Changes
Added a method of controlling axial/FFD optimizations using an input file to more generally setup problems
- Called 'axial control' and activated with jtstrm% axial_control = .true.
- A new file, axial.ctrl, is required which allows for 1) specification of pnt and xsec bounds unique to different parts of the geometry, 2) some linear constraints relating changes in xsecs and pnts, i.e. can request that a subset of points move together or are interpolated between desired points, similarly for xsecs, and 3) nonlinear constraints for common parameters such as span, dihedral, aspect ratio, etc. Note that all of these are based on the axial and ffd defintion, not the underlying Bspline or grid surface.
- Documentation for this will be added at some point, but for now, if you want to know how to use it speak to Tom
- When using the axial control framework, separate version of the optimization routines, initAxlCtrlOptimize and usrfunAxlCtrl, are called
- The new framework is included in the new AxialControl_Mod module.
- When using axial control, the values set in geo_low/geo_up are not used to set variable bounds, since this is now done through the axial.ctrl file. Instead, these variables can form nonlinear box constraints which prevent any B spline CP from going outside the box. This constraint can be activated with jtstrm% geo_box_low/geo_box_up in a bit-wise manner.
- Also set up 'morphing' capability for axial/FFD optimizations. Used to either have morphing sections and/or LE/TE control surfaces. Activated with jtstrm% axial_morph = .true., and an axial.mrph file. See Tom for details on use.
- For multipoint optimizations, or perhaps other cases, different grids can be used for different operating points. This is activated with the op_pts% unique_grids = .true., and also requires the specification of the number of processes assigned to each point through op_pts% nproc. The grids are read in <grid_file_prefix>-001.g, <grid_file_prefix>-002.g for opt points 1 and 2, for eg.
- Ground effect boundary conditions have been added (symmetry with prescribed velocity). These are specified with type 11 in the grid.con file. Note that when using these, AoA should be 0!
- Mesh movement convergence information has been moved from std output to "movegrid-00<operating point>.info"
Changes To Input Parameters
- CG dvs are now set with the op_pts% dvcg(:) list instead of jtstrm% cgdv, and min/max bounds are specified through op_pts% minCG/maxCG
Changes to Subroutines
Changes To Modules
- AxialControl_Mod has been added as described above.
- PseudoMDO_Mod has been added. This is to handle case-specific problems, and specifically contains mixed-fidelity models for use in 'pseudo MDO'.
Group Members Who Contributed to this Jetstream Code Update
Summary of Changes
Added a method of controlling axial/FFD optimizations using an input file to more generally setup problems
- Called 'axial control' and activated with jtstrm% axial_control = .true.
- A new file, axial.ctrl, is required which allows for 1) specification of pnt and xsec bounds unique to different parts of the geometry, 2) some linear constraints relating changes in xsecs and pnts, i.e. can request that a subset of points move together or are interpolated between desired points, similarly for xsecs, and 3) nonlinear constraints for common parameters such as span, dihedral, aspect ratio, etc. Note that all of these are based on the axial and ffd defintion, not the underlying Bspline or grid surface.
- Documentation for this will be added at some point, but for now, if you want to know how to use it speak to Tom
- When using the axial control framework, separate version of the optimization routines, initAxlCtrlOptimize and usrfunAxlCtrl, are called
- The new framework is included in the new AxialControl_Mod module.
- When using axial control, the values set in geo_low/geo_up are not used to set variable bounds, since this is now done through the axial.ctrl file. Instead, these variables can form nonlinear box constraints which prevent any B spline CP from going outside the box. This constraint can be activated with jtstrm% geo_box_low/geo_box_up in a bit-wise manner.
- Also set up 'morphing' capability for axial/FFD optimizations. Used to either have morphing sections and/or LE/TE control surfaces. Activated with jtstrm% axial_morph = .true., and an axial.mrph file. See Tom for details on use.
- For multipoint optimizations, or perhaps other cases, different grids can be used for different operating points. This is activated with the op_pts% unique_grids = .true., and also requires the specification of the number of processes assigned to each point through op_pts% nproc. The grids are read in <grid_file_prefix>-001.g, <grid_file_prefix>-002.g for opt points 1 and 2, for eg.
- Ground effect boundary conditions have been added (symmetry with prescribed velocity). These are specified with type 11 in the grid.con file. Note that when using these, AoA should be 0!
- Mesh movement convergence information has been moved from std output to "movegrid-00<operating point>.info"
Changes To Input Parameters
- CG dvs are now set with the op_pts% dvcg(:) list instead of jtstrm% cgdv, and min/max bounds are specified through op_pts% minCG/maxCGChanges to Subroutines
Changes To Modules
- AxialControl_Mod has been added as described above.- PseudoMDO_Mod has been added. This is to handle case-specific problems, and specifically contains mixed-fidelity models for use in 'pseudo MDO'.