An OSSmooth parameter file consists of several command lines, each of which has the following format:
|
parameter_name |
Arg |
|
or |
|
|
statement_name |
Arg1,arg2,...,argn |
The OSSmooth parameter file accepts comment lines starting with ‘#’ or ‘$’. Each command line can be input in a free format with spaces as a delimiter between the parameter or statement name and its arguments, and among its arguments themselves. The OSSmooth parameter file is case insensitive.
The OSSmooth input file can contain the following input parameters and statements:
|
Parameter |
Description |
|
|
input_file |
Prefix of OptiStruct .fem, .sh, and .grid file. |
|
|
output_file |
Full name of OSSmooth output file. |
|
|
output_code |
Output Formats |
|
|
Argument |
Description | |
| C1 |
Output format for iso-surface: | |
|
|
0= MotionView triangles [default] | |
|
|
1= Nastran trias | |
|
|
2= IGES patches | |
|
|
3= STL trias | |
|
|
4= H3D trias | |
| C2 |
Output control for tet-meshing of volume enclosed by the
iso-surface (beta version). | |
|
|
1= Tetra4 + Tria3 elements | |
|
|
2= Tetra10 + Tria6 elements | |
|
|
3= Tetra4 elements | |
|
|
4= Tetra10 elements | |
|
|
The tet-mesh is written in OptiStruct input format to a file <input_file>_mesh.fem. In this file, the design space of the file <input_file>.fem is replaced with a tet-mesh for immediate reanalysis. Loads, boundary conditions, and non-design elements are carried over from the input file. | |
|
density_threshold |
Density level of iso-density boundary [between 0.0 and 1.0]
Used for smoothing of topology optimization results only. |
|
surface_code |
Type of surface created: 0 = Threshold surface only For topology results, smoothing (surface_code 1) maintains the topology as suggested by OptiStruct, but it can deviate from the given density distribution. If this option is used, check the maximum and average smoothing error output by OSSmooth. |
|
|
opt_code |
Boundary smoothing [Only used if surface_code 1] 0 = Original boundary not included in smoothing [default] |
|
|
distance_coefficient |
Unit-less surface distance coefficient [default = 0, Only used if surface_code 1] Defines closeness of the smooth surface from the threshold surface. The effect of this coefficient varies for different input meshes. Higher magnitudes (both positive and negative) give smoother results, but the surface deviates more from the original density distribution. The recommended range is from -50 to 50. When the coefficient is set between 0 and 50, the surface usually tends to smooth and shrink. When the coefficient is set between 0 and -50, the surface usually tends to smooth and expand. |
|
|
laplacian_smoothing |
Laplacian smoothing [Only used if surface_code
3, or if pure_surf_smoothing 2]. |
|
|
Argument |
Description |
|
|
A1 |
Number of iteration for Laplacian smoothing [integer > 0, default = 10] |
|
|
A2 |
Feature angle threshold in degrees [real, default = 70.0] The feature angle is defined as the angle of normals between two intersected element planes. All corners with a feature angle larger than the threshold will be preserved in the smoothing process. To ignore this constraint, set A2 to its maximum (i.e. 180.0), such that no corners need to be preserved in the smoothing process. |
|
|
A3 |
Design space constraint flag [integer]: 0 – no consideration [default] 1 – considered This flag is only effective with surface_code 3 to smooth the result of a topology optimization. It is not effective for shape optimization results or for pure_surf_smoothing 2. In cases involving the latter, no design space constraint is considered due to its absence. |
|
|
A4 |
Design space smoothing flag [integer]: 0 – preserve the sharp edges in the design domain 1 – smooth the sharp edges in the design domain This flag lets users determine if they want to smooth out the sharp edges or corners in the design domain. |
|
|
surface_reduction |
Reduces the number of surfaces representing the geometry.
Can reduce the number of surfaces by up to 80%. |
|
|
Argument |
Description |
|
|
B1 |
Surface reduction flag [integer] 0 – no surface reduction [default] 1 – do surface reduction |
|
|
B2 |
Feature angle threshold in degrees [real, default = 10.0] The feature angle is defined as the angle formed by the surface normals of two adjacent elements. The surface reduction will be performed on any two adjacent elements in which the feature angle between the two elements is smaller than the threshold. The greater the threshold, the more surface reduction will be conducted. The valid range of the threshold is [1.0, 80.0]. |
|
|
pure_surf_reduction |
Surface reduction only. |
|
|
Argument |
Description |
|
|
B1 |
Surface reduction flag [integer] 0 – no surface reduction [default] 1 – do surface reduction |
|
|
B2 |
Feature angle threshold in degrees [real, default = 10.0] The feature angle is defined as the angle formed by the surface normals of two adjacent elements. The surface reduction will be performed on any two adjacent elements in which the feature angle between the two elements is smaller than the threshold. The greater the threshold, the more surface reduction will be conducted. The valid range of the threshold is [1.0, 80.0]. |
|
|
pure_surf_smoothing |
Surface smoothing only. 0 = no surface smoothing |
|
|
Units |
Defines output units for IGES format. This information gets written to the header of the IGES file and may be recognized by your CAD system. 1 = inch [default] |
|
OSS Example Input File:
|
Parameter |
|
|
input_file |
example |
|
output_file |
example.igs |
|
output_code |
2 |
|
surface_code |
1 |
|
density_threshold |
0.3 |
|
opt_code |
0 |
|
distance_coefficient |
0 |
|
surface_reduction |
1 |
|
units |
0 |