Unità e conversioni automatiche delle unità
La conversione delle unità consente di collegare un'unità fisica a un Vali. Per ogni calcolo con questo Vali, la conversione necessaria verrà eseguita automaticamente nel back-end. La Pint library viene utilizzata come base per questa funzionalità.
L'esempio seguente mostra come 50 kg vengano convertiti automaticamente in 110,23 libbre (lbs), poiché il campo Formula and unit contiene 50kg ma il Display unit è lbs.
Anche i prefissi e i suffissi vengono applicati automaticamente, come mostrato quando si converte il Display unit del Mass Vali da kg a g nell'esempio seguente.
Inoltre, è possibile specificare una formula $vali3 = $vali1 + $vali2 usando $vali1 = 10 meter e vali2 = 100 cm. Se si imposta il Display unit di vali3 su yd (yard), si otterrà automaticamente questo risultato calcolato e convertito: 12.030 yd. Se non si specifica un Display unit per vali3, verrà calcolata automaticamente un'unità (in questo caso sarebbe metro o centimetro).
Gestione delle unità nei Vali e nelle formule
Creazione di un Vali
Quando si crea un nuovo Vali (valore numerico o formula), ci sono due campi proprietà importanti:
-
Formula and unit (obbligatorio)
-
Per i valori numerici (ad esempio, 50 kg), questo campo deve contenere il valore e l'unità.
-
Per le formule (ad esempio, $wheel1.mass+$wheel2.mass) l'unità risulta dal calcolo.
-
-
Display unit (facoltativo – se vuoto, l'unità di visualizzazione sarà basata sulle unità del campo Formula and unit).
La tabella seguente mostra un riepilogo del comportamento previsto per la creazione di un Vali, a seconda delle diverse opzioni di creazione.
| Campo Formula e unità | Campo Unità di visualizzazione | Comportamento previsto |
|---|---|---|
| valore numerico e nessuna unità | nessuna unità | Viene creato un valore adimensionale. |
| valore numerico e nessuna unità | unità | Avviso di dimensione dell'unità sul Vali. |
| valore numerico e un'unità specificata | nessuna unità | Viene creato un valore con l'unità specificata e visualizzato nell'unità del campo Formula and unit. |
| valore numerico e un'unità specificata | unità | Viene creato un valore con l'unità specificata e visualizzato nell'unità del campo Display unit (le unità must corrispondono). |
| una formula (nessuna unità necessaria) | nessuna unità | Il Display unit verrà calcolato automaticamente dalla formula. |
| una formula (nessuna unità necessaria) | unità | Il risultato della formula verrà visualizzato nel Display unit (le unità must corrispondono). |
| una formula e un'unità personalizzata | nessuna unità |
|
| una formula e un'unità personalizzata | unità |
|
| Vali con un tipo | fisso | L'unità verrà presa automaticamente dall'unità del tipo (è possibile modificarla successivamente purché si rimanga nella stessa dimensionalità). |
Modifica delle unità
Campo Unità di visualizzazione
È sempre possibile modificare il campo Display unit purché l'unità di visualizzazione corrisponda a una conversione valida dell'unità utilizzata (o calcolata tramite formule) dal campo Formula and unit. Se c'è un'incongruenza dimensionale, Requirements Portal lo indicherà con un punto esclamativo e un messaggio sul Vali.
Quando l'unità di visualizzazione viene modificata in qualcosa che rappresenta una conversione valida (ad esempio, s in ms o m/s in km/s), il Vali verrà ricalcolato e visualizzato nell'unità corrispondente dopo la conversione, ad esempio, 100 s = 100 000 ms.
Campo Formula e unità
Se un Vali è solo un valore numerico (non una formula), è possibile cambiare l'unità, ad esempio, da m a s. Il Vali diventerà 100 s invece di 100 m. Tuttavia, se dopo la modifica l'unità di visualizzazione non corrisponde dimensionalmente, Requirements Portal indicherà un'incongruenza dimensionale e l'unità di visualizzazione dovrà essere regolata.
Formule
Se un Vali ha una formula, la formula determina l'unità prevista in base alle variabili utilizzate. È possibile scegliere di visualizzare il valore in qualsiasi unità (usando il campo Display unit) che rappresenti una conversione valida dell'unità della formula. Modificando l'unità di visualizzazione da m/s a km/s il valore verrà visualizzato di conseguenza. È possibile modificare l'unità di visualizzazione da m/s a m, ma Requirements Portal indicherà un problema di dimensione dell'unità.
Valori adimensionali
I valori adimensionali possono essere usati nelle moltiplicazioni e nelle divisioni, ma non nelle addizioni e sottrazioni con valori che hanno un'unità, perché le unità non saranno compatibili. Tutti i Vali che hanno un'unità devono essere salvati come valori con un'unità (nel campo Formula and unit) e usati come parametri nelle formule (il che significa che non si dovrebbero usare numeri "magici").
Anche le unità non riconosciute ("unità non definite") sono considerate adimensionali.
Unità non definite
È disponibile un'impostazione separata per consentire l'uso di unità non definite. Se questa opzione è abilitata (impostazione predefinita), è possibile aggiungere unità non supportate, ma verrà creato un avviso. Se è disabilitata, non è possibile assegnare a un Vali un'unità non definita.
Modifica delle unità del Valitype
Un'unità di un Valitype può essere modificata solo in un'altra unità che abbia la stessa dimensionalità dell'unità originale. Questa modifica non influirà sui Vali esistenti di quel tipo, ma i nuovi Vali creati con questo Valitype avranno la nuova unità.
Requisiti e casi peggiori
I requisiti (valori min/max) e i casi peggiori vengono sempre visualizzati nella stessa unità del Vali. Se l'unità viene modificata, anche i requisiti e i casi peggiori verranno ricalcolati per corrispondere all'unità selezionata.
Unità e costanti supportate
Requirements Portal supporta tutte le unità e conversioni predefinite definite nella libreria Pint, nonché le costanti predefinite.
Quando si lavora con le unità in Requirements Portal, tenere presente quanto segue:
-
Le unità e i prefissi distinguono tra maiuscole e minuscole. Ad esempio, kilogram dovrebbe essere sempre
kge maiKgoKG. Tenere presente l'unità Pint Library quando si lavora con le unità e non si è sicuri dell'uso delle maiuscole. -
Hour si abbrevia come
hohr.hnon può essere usato per rappresentare la costante di Planck; per questo si dovrebbe usareplanck_constant. -
Euro e dollaro sono supportati come unità e la loro conversione è fissata a 1 EUR = 1,123 USD (questa conversione può essere modificata nell'Admin Panel per riflettere l'economia corrente). Le abbreviazioni sono rispettivamente
EURoeuroeUSDedollar. -
dBnon corrisponde a "decibarn" come avverrebbe nell'elenco predefinito delle unità, ma è mappato alla propria unità adimensionale "decibel". Altre unità logaritmiche (ad esempio, dBW) sono considerate unità non definite e quindi vengono gestite allo stesso modo delle unità adimensionali. Non è prevista alcuna conversione automatica tra scale lineari e logaritmiche (ad esempio, da dBW a W). -
Per le unità di temperatura, usare
degC,degFedegK(oppure anche soloK).
È possibile usare i seguenti prefissi:
-
Prefissi decimali:
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- = µ- milli- = 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-
-
Prefissi binari:
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-
È possibile utilizzare qualsiasi combinazione di prefisso e unità, ad esempio, ks = kiloseconds, poiché sia il prefisso sia l’unità sono definiti (1 kilosecond = 1000 seconds).
Unità non supportate
L’uso di operatori come unità non è supportato. Ad esempio %, -, &, $, #, °. Questi valori saranno trattati come adimensionali. Ad esempio, l’unità % non sarà trattata come percentuale (50% = 0.5) ma come valore grezzo (50).
Unità personalizzate
Gli amministratori possono definire unità personalizzate (quelle non definite nella libreria Pint) nella pagina Settings – Custom Units (a cui si accede facendo clic sull’icona
in basso a sinistra, selezionando Settings dal menu visualizzato e quindi selezionando Custom Units dall’elenco nel riquadro a sinistra). Per creare una nuova unità personalizzata, fare clic sul pulsante
in alto a destra e definire le unità in base alle unità esistenti nella libreria Pint.