Create a ValueUnit
1: 2: 3: 4: 5: 6: 7: 8: 9: |
|
Print out the value units
1: 2: |
|
- hide *
1: 2: |
|
Output:
500 mg[Mass] 2 X[Count]/day[Time]
Perform a calculation: 2 X/day * 500 mg = 1000 mg/day
1: 2: |
|
- hide *
1:
|
|
Output:
1000 mg[Mass]/day[Time]
Convert 1000 mg/day to g/week
1: 2: |
|
- hide *
1:
|
|
Output:
7 g[Mass]/week[Time]
Create a combi unit directly from a string
1:
|
|
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: |
|
And a value with a unit
1: 2: 3: |
|
1: 2: 3: 4: 5: 6: 7: 8: 9: |
|
Evaluate an expression
1:
|
|
"6 mg[Mass]/day[Time]"
1: 2: 3: 4: 5: 6: |
|
val conc : string = "4 mg[Mass]/ml[Volume]" val rate : string = "2 ml[Ml]/hr[Time]" val dose : string = "20000/9 mcg[Mass]/kg[Kg]/min[Time]"
Calculating with Unit Groups
It is also possible to perform 'unit group calculations'
1: 2: 3: 4: 5: 6: |
|
Results in:
val it : string = "Mass/Weight/Time"
From the combined unit group a list of possible units can be generated
1: 2: 3: |
|
Results in:
kg[Mass]/kg[Weight]/sec[Time] kg[Mass]/kg[Weight]/min[Time] kg[Mass]/kg[Weight]/hr[Time] .... nanog[Mass]/g[Weight]/week[Time] nanog[Mass]/g[Weight]/mo[Time] nanog[Mass]/g[Weight]/yr[Time]
When a unit is 'unknown', i.e. not defined in the library, a special unit group is created.
1: 2: |
|
1: 2: 3: 4: |
|
from Informedica.GenUnits.Lib
Full name: Tutorial.print
Full name: Microsoft.FSharp.Core.ExtraTopLevelOperators.printfn
from Informedica.GenUnits.Lib
from Informedica.GenUnits.Lib.UnitModule
from Informedica.GenUnits.Lib
from Informedica.GenUnits.Lib
from Informedica.GenUnits.Lib
Full name: Tutorial.( 500 mg )
Full name: Informedica.GenUnits.Lib.ValueUnitModule.create
Full name: Informedica.GenUnits.Lib.CombiUnitModule.withUnit
Full name: Informedica.GenUnits.Lib.UnitModule.Units.milliGram
Full name: Tutorial.( 2 dd )
Full name: Informedica.GenUnits.Lib.UnitModule.Units.count
Full name: Informedica.GenUnits.Lib.CombiUnitModule.per
Full name: Informedica.GenUnits.Lib.UnitModule.Units.day
Full name: Informedica.GenUnits.Lib.ValueUnitModule.toString
Full name: Tutorial.tot
Full name: Tutorial.( gram/week )
Full name: Informedica.GenUnits.Lib.UnitModule.Units.gram
Full name: Informedica.GenUnits.Lib.UnitModule.Units.week
Full name: Informedica.GenUnits.Lib.ValueUnitModule.convertTo
Full name: Informedica.GenUnits.Lib.CombiUnitModule.fromString
Full name: Informedica.GenUnits.Lib.ValueUnitModule.fromString
from Informedica.GenUnits.Lib
Full name: Informedica.GenUnits.Lib.Api.eval
Full name: Tutorial.conc
Full name: Tutorial.rate
Full name: Tutorial.dose
Full name: Informedica.GenUnits.Lib.Api.convert
Full name: Tutorial.ug1
Full name: Informedica.GenUnits.Lib.UnitGroupModule.fromString
Full name: Tutorial.ug2
Full name: Tutorial.ug3
Full name: Tutorial.cg
Full name: Informedica.GenUnits.Lib.UnitGroupModule.toString
Full name: Informedica.GenUnits.Lib.UnitGroupModule.getUnits
Get all possible `CombiUnit` unit combinations
belonging to a `UnitGroup` **ung**
module List
from Microsoft.FSharp.Collections
--------------------
type List<'T> =
| ( [] )
| ( :: ) of Head: 'T * Tail: 'T list
interface IEnumerable
interface IEnumerable<'T>
member Head : 'T
member IsEmpty : bool
member Item : index:int -> 'T with get
member Length : int
member Tail : 'T list
static member Cons : head:'T * tail:'T list -> 'T list
static member Empty : 'T list
Full name: Microsoft.FSharp.Collections.List<_>
Full name: Microsoft.FSharp.Collections.List.map
Full name: Informedica.GenUnits.Lib.CombiUnitModule.toString
Full name: Microsoft.FSharp.Collections.List.iter