.. _responses-objective_functions-primary_scales:

""""""""""""""
primary_scales
""""""""""""""


Characteristic values to scale each objective function


.. toctree::
   :hidden:
   :maxdepth: 1



**Specification**

- *Alias:* objective_function_scales 

- *Arguments:* REALLIST

- *Default:* 1.0 (no scaling)


**Description**


Each real value in ``primary_scales`` is a nonzero characteristic value
to be used in scaling each objective function. They only have effect
when the associated method specifies ``scaling``.

This keyword is required for
:dakkw:`responses-objective_functions-primary_scale_types` of <tt>'value'</tt> and
optional for <tt>'log'</tt>. When specified in conjunction with log,
scale values are applied prior to the logarithm, to permit log scaling
of strictly negative response functions.

Length: When specified, ``primary_scales`` must have length one of:


- One (the single value will be applied to each objective function); or
- Number of response groups ( :dakkw:`responses-objective_functions`), so the number of scalars plus the number of fields when fields are present; or
- Total number of response elements, so the number of scalar responses plus the sum of the lengths of the fields.

*Usage Tips:*

When ``primary_scales`` are specified, but not
:dakkw:`responses-objective_functions-primary_scale_types`, the scaling type is assumed
to be 'value' for all primary response functions.

Use scale values of 1.0 to selectively avoid scaling a subset of
response functions.

When scaling is active, it is applied to objective functions prior to
any :dakkw:`responses-objective_functions-weights` and multi-objective sum
formation. See the equations in :dakkw:`responses-objective_functions`.

See the scaling information under specific methods, e.g.,
``method-*-scaling`` for details on how to use this keyword.


