Scalability ============ Some :ref:`Construction Products ` are available in varying sizes, each with a different MKI. An illustrative example is the variability in thickness among concrete tiles. The :ref:`Environmental Declaration` of such Construction Products contain one or more scalable :ref:`Environmental Profiles `. This scaling is based on a specific dimension, such as thickness. The Score Matrix of a scaled Environmental Profile is defined as: .. math:: \textbf{W}_\text{scaled profile,x} &= f(x) \cdot \textbf{W}_\text{reference} Scaled Environmental Profile :math:`\textbf{W}_\text{scaled profile,x}` Score matrix resulting from multiplication with the scale factor Scaling formula :math:`f(x)` Expresses the scaling factor in terms of x Dimension value :math:`x` Value of the dimension on which the scaling is based Reference Environmental Profile :math:`\textbf{W}_\text{reference}` Score matrix to which the scale factor is applied .. note:: :math:`\textbf{W}_\text{reference}` is produced using the `inspected value`, :math:`x_0`, as dimension. And thus, :math:`f(x_0) = 1`: .. math:: \textbf{W}_{\text{scaled profile},x_0} &= f(x_0) \cdot \textbf{W}_\text{reference} \\ &= 1 \cdot \textbf{W}_\text{reference} \\ &= \textbf{W}_\text{reference} Scaling formula --------------- Each Scalable Environmental Profile contains a `formula`-type and a set of `parameters` for this formula. There are 2 different sets of scaling formulas that are used: v3 and v4. Instrumenthouders are required to implement both to make full use of scaling. V4 scaling formulas ------------------- As of January 2025, the v4 scaling formulas are used for new declarations. The v4 scaling formulas and their respective identifiers are: * Linear - `v4_linear` * Nonlinear - `v4_nonlinear` The set of `parameters` is in the form :math:`[a, b]` for `v4_linear` or :math:`[a, b, c, d]` for `v4_nonlinear`. Linear ###### .. math:: f(x) &= {ax + b \over {a x_\text{0} + b }} Nonlinear ######### .. math:: f(x) &= {ax^3 + bx^2 + cx + d \over {a x_\text{0}^3 + b x_\text{0}^2 + c x_\text{0} + d}} The inspected value :math:`x_0` The value of the scaling dimension used to determine the :math:`\textbf{W}_\text{reference}` Scaling parameter :math:`a` The first scaling parameter in the parameters list. Scaling parameter :math:`b` The second scaling parameter in the parameters list. Scaling parameter :math:`c` The third scaling parameter in the parameters list. Scaling parameter :math:`d` The fourth scaling parameter in the parameters list. V3 scaling formulas ------------------- Wherever v4 formulas are not used yet, v3 scaling formulas will be used instead. The v3 scaling formulas and their respective identifiers are: * Linear - `v3_linear` * Power - `v3_power` * Logarithmic - `v3_logarithmic` * Exponential - `v3_exponential` The set of `parameters` is of the form :math:`[p_1, p_2, p_3]` Linear ####### .. math:: f(x) &= {ax + b \over {a x_\text{0} + b}} The inspected value :math:`x_0` The value of the scaling dimension used to determine the :math:`\textbf{W}_\text{reference}` Scaling parameter :math:`p_1 = a` The first scaling parameter :math:`p_1` in the parameters list. This parameter is referred to as 'A' in the legacy API. Scaling parameter :math:`p_2` Unused for linear scaling. Should be ignored Scaling parameter :math:`p_3 = b` The third scaling parameter :math:`p_3` in the parameters list. This parameter is referred to as 'C' in the legacy API Power ###### .. math:: f(x) &= {ax^n + b \over {a x_\text{0}^n + b}} The inspected value :math:`x_0` The value of the scaling dimension used to determine the :math:`\textbf{W}_\text{reference}` Scaling parameter :math:`p_1 = a` The first scaling parameter :math:`p_1` in the parameters list. This parameter is referred to as 'A' in the legacy API. Scaling parameter :math:`p_2 = n` The second scaling parameter :math:`p_2` in the parameters list, used to define the exponent in a power formula. This parameter is referred to as 'B' in the legacy API Scaling parameter :math:`p_3 = b` The third scaling parameter :math:`p_3` in the parameters list. This parameter is referred to as 'C' in the legacy API Logarithmic ############ .. math:: f(x) &= {a \cdot \ln(x) + b \over {a \cdot \ln(x_\text{0}}) + b} The inspected value :math:`x_0` The value of the scaling dimension used to determine the :math:`\textbf{W}_\text{reference}` Scaling parameter :math:`p_1 = a` The first scaling parameter :math:`p_1` in the parameters list. This parameter is referred to as 'A' in the legacy API. Scaling parameter :math:`p_2` Unused for linear scaling. Should be ignored Scaling parameter :math:`p_3 = b` The third scaling parameter :math:`p_3` in the parameters list. This parameter is referred to as 'C' in the legacy API Exponential ############ .. math:: f(x) &= {a \cdot \exp(k x) + b \over {a \cdot \exp(k x_\text{0})} + b} The inspected value :math:`x_0` The value of the scaling dimension used to determine the :math:`\textbf{W}_\text{reference}` Scaling parameter :math:`p_1 = a` The first scaling parameter :math:`p_1` in the parameters list. This parameter is referred to as 'A' in the legacy API. Scaling parameter :math:`p_2 = k` The second scaling parameter :math:`p_2` in the parameters list, used in the exponential formula. This parameter is referred to as 'B' in the legacy API. Scaling parameter :math:`p_3 = b` The third scaling parameter :math:`p_3` in the parameters list. This parameter is referred to as 'C' in the legacy API Two-dimensional scaling ------------------------- Some Scalable Environmental Profiles define scaling on two dimensions (eg. `length` and `width`). In such cases, :math:`x` is defined as the `product` of the values in both scaling dimensions: .. math:: x &= x_\text{dimension1} \cdot x_\text{dimension2}