hyperlogtGml2-class: Class hyperlogtGml2

Description Details Slots Objects from the Class Extends Note Author(s) References See Also Examples


Hyperlog transformation parameterized according to Gating-ML 2.0.


hyperlogtGml2 is defined by the following function:

bound(hyperlog, boundMin, boundMax) = max(min(hyperlog,boundMax),boundMin))


hyperlog(x, T, W, M, A) = root(EH(y, T, W, M, A) - x)

and EH is defined as:

EH(y, T, W, M, A) = ae^{by} + cy - f


and a, b, c and f are defined by means of T, W, M, A, w, x0, x1, x2, e0, ca and fa as:

w = W/(M+A)

x2 = A/(M+A)

x1 = x2 + w

x0 = x2 + 2*w

b = (M + A)*ln(10)

e0 = e^{b*x0}

ca= e0/w

fa = e^{b*x1} + ca*x1

a = T / (e^b + ca - fa)

c = ca * a

f = fa * a

In addition, if a boundary is defined by the boundMin and/or boundMax parameters, then the result of this transformation is restricted to the [boundMin,boundMax] interval. Specifically, should the result of the hyperlog function be less than boundMin, then let the result of this transformation be boundMin. Analogically, should the result of the hyperlog function be more than boundMax, then let the result of this transformation be boundMax. The boundMin parameter shall not be greater than the boundMax parameter.



Object of class function.


Object of class numeric – positive constant (top of scale value).


Object of class numeric – positive constant (desired number of decades).


Object of class numeric – positive constant that is not greater than half of M (the number of such decades in the approximately linear region)


Object of class numeric – a constant that is greater than or equal to -W, and also less than or equal to M-2W. (A represents the number of additional decades of negative data values to be included.)


Object of class "transformation" – flow parameter to be transformed.


Object of class "character" – unique ID to reference the transformation.


Object of class numeric – lower bound of the transformation, default -Inf.


Object of class numeric – upper bound of the transformation, default Inf.

Objects from the Class

Objects can be created by calls to the constructor

hyperlogtGml2(parameter, T, M, W, A, transformationId, boundMin, boundMax)


Class singleParameterTransform, directly.

Class transform, by class singleParameterTransform, distance 2.

Class transformation, by class singleParameterTransform, distance 3.

Class characterOrTransformation, by class singleParameterTransform, distance 4.


That hyperlogtGml2 transformation brings "reasonable" data values to the scale of [0,1]. The transformation is somewhat similar to logicletGml2. (See Gating-ML 2.0 for detailed comparison)

The hyperlog transformation object can be evaluated using the eval method by passing the data frame as an argument. The transformed parameters are returned as a matrix with a single column. (See example below)


Spidlen, J., Moore, W.


Gating-ML 2.0: International Society for Advancement of Cytometry (ISAC) standard for representing gating descriptions in flow cytometry. http://flowcyt.sourceforge.net/gating/20141009.pdf

See Also

hyperlog, logicleTransform, transform-class, transform

Other mathematical transform classes: EHtrans-class, asinht-class, asinhtGml2-class, dg1polynomial-class, exponential-class, hyperlog-class, invsplitscale-class, lintGml2-class, logarithm-class, logicletGml2-class, logtGml2-class, quadratic-class, ratio-class, ratiotGml2-class, sinht-class, splitscale-class, squareroot-class, unitytransform-class


myDataIn  <- read.FCS(system.file("extdata", "0877408774.B08", 
myHyperLg <- hyperlogtGml2(parameters = "FSC-H", T = 1023, M = 4.5, 
    W = 0.5, A = 0, transformationId="myHyperLg")
transOut  <- eval(myHyperLg)(exprs(myDataIn))

flowCore documentation built on Nov. 8, 2020, 5:19 p.m.