Unidades y conversiones automáticas de unidades
La conversión de unidades le permite conectar una unidad física a un Vali. Para cada cálculo con este Vali, la conversión necesaria se realizará automáticamente en el back end. La biblioteca Pint se utiliza como base para esto.
El siguiente ejemplo muestra cómo 50 kg se convierten automáticamente en 110.23 libras (lbs), ya que el Formula and unit campo contiene 50kg pero la Display unit es lbs.
Además, los prefijos y sufijos también se aplican automáticamente, como se ejemplifica al convertir la Display unit del Vali de masa de kg a g en el ejemplo siguiente.
Además, puede especificar una fórmula $vali3 = $vali1 + $vali2 usando $vali1 = 10 meter y vali2 = 100 cm. Si establece la Display unit de vali3 en yd (yarda), obtendrá este resultado calculado y convertido automáticamente: 12.030 yd. Si no especifica una Display unit para vali3, se calculará automáticamente una unidad (en este caso, sería metro o centímetro).
Gestión de unidades en Valis y fórmulas
Creación de un Vali
Al crear un nuevo Vali (valor numérico o fórmula), hay dos campos de propiedades importantes:
-
Formula and unit (obligatorio)
-
Para valores numéricos (p. ej., 50 kg), este campo debe contener el valor y la unidad.
-
Para fórmulas (p. ej., $wheel1.mass+$wheel2.mass), la unidad resulta del cálculo.
-
-
Display unit (opcional; si está vacío, la unidad de visualización se basará en las unidades del campo Formula and unit).
La siguiente tabla muestra un resumen del comportamiento esperado para la creación de Vali, según las diferentes opciones de creación.
| Campo de fórmula y unidad | Campo de unidad de visualización | Comportamiento esperado |
|---|---|---|
| valor numérico y sin unidad | sin unidad | Se crea un valor adimensional. |
| valor numérico y sin unidad | unidad | Advertencia de dimensión de unidad en el Vali. |
| valor numérico y una unidad especificada | sin unidad | Se crea un valor con la unidad especificada y se muestra en la unidad del campo Formula and unit. |
| valor numérico y una unidad especificada | unidad | Se crea un valor con la unidad especificada y se muestra en la unidad del campo Display unit (las unidades must coinciden). |
| una fórmula (no se necesita unidad) | sin unidad | La Display unit se calculará automáticamente a partir de la fórmula. |
| una fórmula (no se necesita unidad) | unidad | El resultado de la fórmula se mostrará en la Display unit (las unidades must coinciden). |
| una fórmula y una unidad personalizada | sin unidad |
|
| una fórmula y una unidad personalizada | unidad |
|
| Vali con un tipo | fijo | La unidad se tomará automáticamente de la unidad del tipo (es posible cambiarla después siempre que se mantenga dentro de la misma dimensionalidad). |
Cambio de unidades
Campo de unidad de visualización
Siempre es posible cambiar el campo Display unit siempre que la unidad de visualización coincida con una conversión válida de la unidad utilizada (o calculada mediante fórmulas) del campo Formula and unit. Si hay una discrepancia de dimensión, Requirements Portal lo indicará con un signo de exclamación y un mensaje en el Vali.
Cuando la unidad de visualización se cambia a algo que es una conversión válida (p. ej., s a ms o m/s a km/s), el Vali se recalculará y se mostrará en la unidad correspondiente después de la conversión, p. ej., 100 s = 100 000 ms.
Campo de fórmula y unidad
Si un Vali es solo un valor numérico (no una fórmula), puede cambiar la unidad, por ejemplo, de m a s. El Vali pasará a ser 100 s en lugar de 100 m. Sin embargo, si después del cambio la unidad de visualización no coincide dimensionalmente, Requirements Portal indicará una discrepancia de dimensión y será necesario ajustar la unidad de visualización.
Fórmulas
Si un Vali tiene una fórmula, la fórmula determina la unidad esperada según las variables utilizadas. Puede elegir mostrar el valor en cualquier unidad (usando el campo Display unit) que sea una conversión válida de la unidad de la fórmula. Cambiar la unidad de visualización de m/s a km/s mostrará el valor en consecuencia. Es posible cambiar la unidad de visualización de m/s a m, pero Requirements Portal indicará un problema de dimensión de unidad.
Valores adimensionales
Los valores adimensionales pueden utilizarse en multiplicaciones y divisiones, pero no en sumas y restas con valores que tienen una unidad, porque las unidades no serán compatibles. Todos los Valis que tengan una unidad deben guardarse como valores con una unidad (en el campo Formula and unit) y utilizarse como parámetros en fórmulas (lo que significa que no deben usarse números "mágicos").
Las unidades que no se reconocen ("unidades no definidas") también se consideran adimensionales.
Unidades no definidas
Hay disponible una configuración independiente para permitir el uso de unidades no definidas. Si está habilitada (configuración predeterminada), es posible añadir unidades no compatibles, pero se generará una advertencia. Si está deshabilitada, no es posible asignar a un Vali una unidad no definida.
Cambio de unidades de Valitype
La unidad de un Valitype solo puede cambiarse por otra unidad que tenga la misma dimensionalidad que la unidad original. Este cambio no afectará a ningún Vali existente de ese tipo, pero los nuevos Valis creados con este Valitype tendrán la nueva unidad.
Requisitos y peores casos
Los requisitos (valores mín./máx.) y los peores casos siempre se muestran en la misma unidad que la unidad del Vali. Si se cambia la unidad, los requisitos y los peores casos también se recalcularán para corresponder a la unidad seleccionada.
Unidades y constantes compatibles
Requirements Portal admite todas las unidades y conversiones predeterminadas definidas en la biblioteca Pint, así como las constantes predeterminadas.
Al trabajar con unidades en Requirements Portal, tenga en cuenta lo siguiente:
-
Las unidades y los prefijos distinguen entre mayúsculas y minúsculas. Por ejemplo, kilogramo siempre debe ser
kgy nuncaKgoKG. Tenga presente la biblioteca Pint al trabajar con unidades si no está seguro del uso de mayúsculas. -
La hora se abrevia como
hohr.hno puede usarse para representar la constante de Planck; para ello debe usarseplanck_constant. -
El euro y el dólar son compatibles como unidades, y su conversión se fijó en 1 EUR = 1.123 USD (esta conversión puede cambiarse en el panel de administración para ajustarse a la economía actual). Se abrevian como
EURoeuroyUSDydollarrespectivamente. -
dBno se asigna a "decibarn" como ocurriría en la lista de unidades predeterminada, sino que se asigna a su propia unidad adimensional "decibel". Otras unidades logarítmicas (p. ej., dBW) se consideran unidades no definidas y, por tanto, se manejan del mismo modo que las unidades adimensionales. No se prevé ninguna conversión automática entre escalas lineales y logarítmicas (p. ej., de dBW a W). -
Para las unidades de temperatura, use
degC,degFydegK(o aquí también simplementeK).
Se pueden usar los siguientes prefijos:
-
Prefijos decimales:
yocto- = 1e-24 = y- zepto- = 1e-21 = z- atto- = 1e-18 = a- femto- = 1e-15 = f- pico- = 1e-12 = p- nano- = 1e-9 = n- micro- = 1e-6 = u- = µ- mili- = 1e-3 = m- centi- = 1e-2 = c- deci- = 1e-1 = d- deca- = 1e+1 = da- = deka hecto- = 1e2 = h- kilo- = 1e3 = k- mega- = 1e6 = M- giga- = 1e9 = G- tera- = 1e12 = T- peta- = 1e15 = P- exa- = 1e18 = E- zetta- = 1e21 = Z- yotta- = 1e24 = Y-
-
Prefijos binarios:
kibi- = 2^10 = Ki- mebi- = 2^20 = Mi- gibi- = 2^30 = Gi- tebi- = 2^40 = Ti- pebi- = 2^50 = Pi- exbi- = 2^60 = Ei- zebi- = 2^70 = Zi- yobi- = 2^80 = Yi-
Se puede usar cualquier combinación de prefijo y unidad, por ejemplo, ks = kiloseconds, ya que tanto el prefijo como la unidad están definidos (1 kilosecond = 1000 seconds).
Unidades no compatibles
No se admite el uso de operadores como unidades. Por ejemplo, %, -, &, $, #, °. Estos valores se tratarán como adimensionales. Por ejemplo, la unidad % no se tratará como un porcentaje (50% = 0.5), sino como el valor sin procesar (50).
Unidades personalizadas
Los administradores pueden definir unidades personalizadas (aquellas que no están definidas en la biblioteca Pint) en la página Settings – Custom Units (a la que se accede haciendo clic en el icono
de la parte inferior izquierda, seleccionando Settings en el menú que aparece y, a continuación, seleccionando Custom Units de la lista en el panel izquierdo). Para crear una nueva unidad personalizada, haga clic en el botón
de la parte superior derecha y defina las unidades basándose en las unidades existentes en la biblioteca Pint.