Scaling¶
Fields¶
- formula
string,
v3_linear
|v3_power
|v3_logarithmic
|v3_exponential
- parameters
list
- dimensions
list, see Dimension
- scaled_mki_set
list
formula¶
For NMDv4 this is the Scaling.formula
.
For NMDv3 use the following mapping from NMD_ProfielSets_Versies.SchalingsFormuleID
:
->
v3_linear
->
v3_power
->
v3_logarithmic
->
v3_exponential
parameters¶
For the NMDv4 this is the Scaling.parameters
.
For NMDv3 the parameters are built as follows:
parameters = [
NMD_ProfielSets_Versies.SchalingsFormuleA1,
NMD_ProfielSets_Versies.SchalingsFormuleB1,
NMD_ProfielSets_Versies.SchalingsFormuleC,
]
scaled_mki_set¶
For each dimension a few values are taken as input parameters for the calculation of the MKI with scaling:
lower-midpoint - midway between the minimum and the inspected value
upper-midpoint - midway between the inspected value and the maximum value
Make sure to maintain the ordering of the dimensions as you defined them in the list of dimensions. So in the case of two dimensions, the dimension you listed first in the field dimensions will be called dimension 1 and the second dimension will be called dimension 2.
input_values¶
Every combination of the dimension values must be taken. In the case of 1 dimension this will result in 5 scaled_mki_sets. In the case of 2 dimensions this will result in 25 scaled_mki_sets:
minimum 1, minimum 2
minimum 1, lower-midpoint 2
minimum 1, inspected_value 2
- …
maximum 1, upper-midpoint 2
maximum 1, maximum_value 2
In the case of 2 dimensions, this list can be generated using the following pseudocode.
dimension1 = (
dimension1.minimum,
dimension1.lower_midpoint,
dimension1.inspected_value,
dimension1.upper_midpoint,
dimension1.maximum,
)
dimension2 = (
dimension2.min,
dimension2.lower_midpoint,
dimension2.inspected_value,
dimension2.upper_midpoint,
dimension2.maximum,
)
for input_dimension1 in dimension1:
for input_dimension2 in dimension2:
print {
"input_values": [input_dimension1, input_dimension2],
"mki": calculate_mki(input_values),
"mki_net": calculate_mki_net(input_values)
}
mki¶
The total MKI of the profile with the input_values
as the inputs for scaling and including the supplement (toeslag) for category 3.
mki_net¶
The total MKI of the profile with the input_values
as the inputs for scaling, but excluding the supplement (toeslag) for category 3.
Example¶
{
"formula": "v3_linear",
"parameters": [1.1, 0, 0.1],
"dimensions": [], // not actually empty
"scaled_mki_set": [
{
"input_values": [0.5],
"mki": 0.5,
"mki_net": 0.4,
},
{
"input_values": [0.75],
"mki": 0.75,
"mki_net": 0.6
},
{
"input_values": [1.0],
"mki": 1.0,
"mki_net": 0.85
},
{
"input_values": [1.5],
"mki": 1.5,
"mki_net": 1.4
},
{
"input_values": [2.0],
"mki": 2.0,
"mki_net": 1.8
}
]
}