*writequalitycriteria

Writes the specified quality criteria to the specified text file in the format supported by HyperMesh.

Syntax

*writequalitycriteria applic_array_id applic_array_size data_array_id data_array_size file_name

Type

HyperMesh Tcl Modify

Description

Writes the specified quality criteria to the specified text file in the format supported by HyperMesh.

Inputs

applic_array_id
The ID of the array of integers containing the switch indicators of the partial quality parameters application (0 or 1 for each quality parameter).
Currently, this argument must be set to 1.
applic_array_size
The number of the criteria data parameters.
Currently, this value must be 12.
data_array_id
The ID of the array of doubles containing the criteria data.
Currently, this argument must be set to 1.
data_array_size
The number of the criteria data parameters.
Currently, this value must be 77.
file_name
The path to the destination criteria (a quoted string).

Examples

If the mesh quality criteria are given with the table:

 # CriterionOn      Wt   Ideal    Good    Warn    Fail   Worst 
 0 penalty value   0.00   0.00    0.80    1.00   10.00 
 1 min length   	 1     1      15.00    13.50    6.00    3.00    1.50 
 2 max length      1     1      15.00    18.00    22.50   30.00   45.00 
 3 aspect ratio 1   1    1.00    2.00    4.40    5.00   10.00 
 4 warpage 1   1    0.00    5.00    8.00   10.00   90.00 
 5 max angle quad    1   1   90.00  110.00  125.00  135.00  180.00 
 6 min angle quad    1   1   90.00   70.00   55.00   45.00    0.00 
 7 max angle tria    1   1   60.00   80.00  100.00  120.00  180.00 
 8 min angle tria    1   1   60.00   50.00   30.00   20.00    0.00 
 9 skew    1   1    0.00   10.00   35.00   45.00   90.00 
10 jacobian1   1    1.00    0.90    0.75    0.70    0.00 
11 chordal dev  0   1    0.00    0.30    0.80    1.00    2.00 
12 % of trias   1   1    2.00    6.00    8.00   10.00   15.00 

The criteria should be written with the following commands sequence:

*createarray(12) 1 1 1 1 1 1 1 1 1 1 0 1 
*createdoublearray(77)  1 15 13.5 6 3 1.5  1 15 18 22.5 30 45 
1 1 2 4.4 5 10  1 0 5 8 10 90  1 90 110 125 135 180   1 90 70 55 45 0
1 60 80 100 120 180  1 60 50 30 20 0  1 0 10 35 45 90 
1 1 0.9 0.75 0.7 0  1 0 0.3 0.8 1 2   1 2 6 8 10 15 0 0 0.8 1 10
*writequalitycriteria(1,12,1,77,"e:/demos/my_criteria.txt")

*createarray(12) and *createdoublearray(77) commands are required for *writequalitycriteria().

The switch status of each of the 12 quality parameters (1 = on, 0 = off ) are to be given in the integers array of 12.

The criteria data set consists of data for twelve quality parameters (min length, max length, warpage, etc.) and penalty values for threshold parameters values (ratings). The array passed to the command consequently comprises the data of the identical structure for each of the 12 quality parameters (six numbers per criterion) and then the five numbers for threshold penalty values. The order of the quality criterions is pre-defined.

For each of the quality parameters, the data should be placed in the following order:
  • Weight factor of the parameter in the compound quality index
  • Ideal rating (ideal threshold level) for the parameter
  • Good rating (good threshold level) for the parameter
  • Warning rating (warning threshold level) for the parameter
  • Failed rating (failed threshold level) for the parameter
  • Worst rating (worst level) for the parameter

The parameter ratings must be monotonic (increasing or decreasing dependently on the parameter nature).

The dimensionless threshold penalty values for ideal, good, warning, failed, and worst parameter are five numbers that must monotonically increase.

By default:
  • For ideal rating the penalty is 0
  • For good rating the penalty is 0
  • For failed rating the penalty is 1

For batch mode, the command should be preceded by an hm_answernext "yes" or hm_answernext "no" command to provide instructions for writing to an existing file.

Errors

None.