Unidades e Conversões Automáticas de Unidades
A conversão de unidades permite-lhe associar uma unidade física a um Vali. Em cada cálculo com este Vali, a conversão necessária será efetuada automaticamente no back end. A biblioteca Pint library é utilizada como base para isto. A Figura Unit Conversion mostra como 50 kg são automaticamente convertidos em 110,23 libras (lbs), uma vez que o campo Valor+Unidade contém 50 kg, mas a Unidade de Visualização é “lbs”. Os prefixos e sufixos também são aplicados automaticamente, como exemplificado ao converter a Unidade de Visualização do Vali de Massa de “kg” para “g” no vídeo. Tenha em atenção que as unidades devem corresponder, e qualquer incompatibilidade é indicada por um ponto de exclamação no nome do Vali pelo Requirements & Systems Portal.
Conversão de unidades - Os valores são automaticamente convertidos pelo Requirements & Systems Portal através da aplicação de diferentes unidades, prefixos e sufixos
Além disso, pode especificar uma fórmula $vali3 = $vali1 + $vali2 utilizando $vali1 = 10 meter e vali2 = 100 cm. Se definir a Unidade de Visualização de vali3 para yd (jarda), obterá este resultado automaticamente calculado e convertido: 12.030 yd. Se não especificar uma Unidade de Visualização para vali3, será calculada automaticamente uma unidade (neste caso seria metro ou centímetro). A unidade de cada Vali é a mesma para todos os utilizadores que visualizam o vali. Todas as unidades e constantes suportadas estão listadas na Pint Library.
Tratamento de unidades em Valis e fórmulas
Criar um Vali
Ao criar um novo Vali (valor numérico ou fórmula), existem dois campos de propriedades importantes:
-
Fórmula e Unidade (obrigatório)
-
Para valores numéricos (por exemplo, 50 kg), este campo tem de conter o valor e a unidade
-
Para fórmulas (por exemplo, $wheel1.mass+$wheel2.mass), a unidade resulta do cálculo.
-
-
Unidade de Visualização (opcional - se estiver vazio, a Unidade de Visualização será baseada nas Unidades do campo Fórmula e Unidade)
A tabela abaixo mostra um resumo do comportamento esperado para a criação de Vali, dependendo das diferentes opções de criação:
Campo Fórmula e Unidade |
Campo Unidade de Visualização |
Comportamento esperado |
|---|---|---|
valor numérico e sem unidade |
sem unidade |
é criado um valor adimensional |
valor numérico e sem unidade |
unidade |
aviso de dimensão da unidade no Vali |
valor numérico e uma unidade especificada |
sem unidade |
é criado um valor com a unidade especificada e apresentado na unidade do campo Fórmula e Unidade |
valor numérico e uma unidade especificada |
unidade |
é criado um valor com a unidade especificada e apresentado na unidade do campo Unidade de Visualização (as unidades must correspondem) |
uma fórmula (não é necessária unidade) |
sem unidade |
a Unidade de Visualização será calculada automaticamente a partir da fórmula |
uma fórmula (não é necessária unidade) |
unidade |
o resultado da fórmula será apresentado na Unidade de Visualização (as unidades must correspondem) |
uma fórmula e uma unidade personalizada |
sem unidade |
|
uma fórmula e uma unidade personalizada |
unidade |
|
Vali com um tipo |
fixo |
a unidade será automaticamente obtida a partir da unidade do tipo (é possível alterá-la posteriormente, desde que se mantenha dentro da mesma dimensionalidade) |
Alterar unidades
Campo Unidade de Visualização
É sempre possível alterar o campo Unidade de Visualização, desde que a Unidade de Visualização corresponda a uma conversão válida da unidade utilizada (ou calculada através de fórmulas) no campo Fórmula e Unidade. Se existir uma incompatibilidade de dimensão, o Requirements & Systems Portal indicará isso com um ponto de exclamação e uma mensagem no Vali.
Quando a Unidade de Visualização é alterada para algo que seja uma conversão válida (por exemplo, s para ms ou m/s para km/s), o Vali será recalculado e apresentado na unidade correspondente após a conversão, por exemplo 100 s = 100 000 ms.
Campo Fórmula e Unidade
Se um Vali for apenas um valor numérico (não uma fórmula), pode alterar a unidade, por exemplo, de m para s. O Vali passará simplesmente a ser 100 s em vez de 100 m. No entanto, se após a alteração a Unidade de Visualização não corresponder dimensionalmente à nova unidade, o Requirements & Systems Portal indicará uma incompatibilidade de dimensão e a Unidade de Visualização terá de ser ajustada.
Fórmulas
Se um Vali tiver uma fórmula, a fórmula determina a unidade esperada em função das variáveis utilizadas. Pode optar por apresentar o valor em qualquer unidade (utilizando o campo Unidade de Visualização) que seja uma conversão válida da unidade da fórmula. Alterar a Unidade de Visualização de m/s para km/s apresentará o valor em conformidade. É possível alterar a Unidade de Visualização de m/s para m, mas o Requirements & Systems Portal indicará um problema de dimensão da unidade.
Valores adimensionais
Os valores adimensionais podem ser utilizados em multiplicações e divisões, mas não em adições e subtrações com valores que tenham uma unidade, porque as unidades não serão compatíveis. Todos os Valis que tenham uma unidade devem ser guardados como valores com unidade (no campo Fórmula e Unidade) e utilizados como parâmetros em fórmulas (isto significa que não devem ser usados números 'mágicos').
As unidades que não são reconhecidas ('unidades indefinidas') também são consideradas adimensionais.
Unidades indefinidas
Está disponível uma definição separada para permitir a utilização de unidades indefinidas. Se esta estiver ativada (predefinição), é possível adicionar unidades que não são suportadas, mas será criado um aviso. Se estiver desativada, não é possível atribuir uma unidade indefinida a um Vali.
Alterar unidades de Valitype
Uma unidade de um Valitype só pode ser alterada para uma unidade diferente que tenha a mesma dimensionalidade da unidade original. Esta alteração não afetará quaisquer Valis existentes desse tipo, mas os novos Valis criados com este Valitype terão a nova unidade.
Requisitos e piores casos
Os requisitos (valores mín./máx.) e os piores casos são sempre apresentados na mesma unidade que a unidade do Vali. Se a unidade for alterada, os requisitos e os piores casos também serão recalculados para corresponder à unidade selecionada.
Unidades e constantes suportadas
O Requirements & Systems Portal suporta todas as unidades e conversões predefinidas definidas na biblioteca Pint, bem como as constantes predefinidas.
Tenha em atenção o seguinte ao trabalhar com unidades no Requirements & Systems Portal:
-
As unidades e os prefixos são sensíveis a maiúsculas e minúsculas. Por exemplo, quilograma deve ser sempre “kg“ e nunca “Kg“ ou “KG“. Tenha presente a Pint Library ao trabalhar com unidades, caso tenha dúvidas sobre a utilização de maiúsculas/minúsculas.
-
Hour é abreviado como 'h' ou 'hr'. 'h' não pode ser utilizado para representar a constante de Planck; para isso deve ser utilizado 'planck_constant'
-
Euro e dólar são suportados como unidades, e a sua conversão foi fixada em 1 EUR = 1.123 USD (esta conversão pode ser alterada no Painel de Administração para corresponder à economia atual). São abreviados, respetivamente, como 'EUR' ou 'euro' e 'USD' ou 'dollar'
-
'dB' não corresponde a 'decibarn', como aconteceria na lista de unidades predefinida, mas sim à sua própria unidade adimensional 'decibel'. Outras unidades logarítmicas (por exemplo, dBW) são consideradas unidades indefinidas e, por isso, são tratadas da mesma forma que as unidades adimensionais. Não está prevista conversão automática entre escalas lineares e logarítmicas (por exemplo, dBW para W)
-
Para unidades de temperatura, utilize degC, degF e degK (ou, neste caso, apenas K)
Tenha atenção ao utilizar a conversão automática para valores de temperatura. As temperaturas são unidades 'não multiplicativas' e têm um comportamento particular, que é explicado com mais detalhe na Pint documentation.
Podem ser utilizados os seguintes prefixos:
Decimal prefixes
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- quilo- = 1e3 = k- mega- = 1e6 = M- giga- = 1e9 = G- tera- = 1e12 = T- peta- = 1e15 = P- exa- = 1e18 = E- zetta- = 1e21 = Z- yotta- = 1e24 = Y-
Binary prefixes
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-
Qualquer combinação de prefixo e unidade pode ser utilizada, por exemplo, ks = kiloseconds, uma vez que tanto o prefixo como a unidade estão definidos (1 kilosecond = 1000 seconds).
Unidades não suportadas
Não é suportada a utilização de operadores como unidades. Por exemplo, %, -, &, $, #, °. Estes Valis serão tratados como adimensionais e será criado um aviso warning (com o código 2115). Por exemplo, a unidade % não será tratada como uma percentagem (50% = 0.5), mas sim como o valor bruto (50).
Unidades personalizadas
Os administradores podem definir unidades personalizadas na página Settings, que só é visível para utilizadores administradores. Os administradores podem criar unidades personalizadas que não estão definidas na biblioteca Pint. Para aceder às definições de Custom Units, clique no ícone Settings(1) e navegue até à secção Custom Units(2) no menu de definições.

Os administradores podem adicionar novas unidades personalizadas clicando no ícone + ou em “Adicionar unidade personalizada”(3) e definir as unidades com as unidades existentes na biblioteca Pint.