Ho to implement "dynamic" boundaries for a pdf parameter

Dear ROOT experts,
I would like to introduce in my pdf a constraint that relates the boundaries of two fit variables
How can I do that ?

Let me explain a bit better. My pdf is a function that depends on the independent variable x and on two parameters a and b, like: pdf = f(x;a,b)
One parameter is defined as:
a = new RooRealVar(“a”,“a”,0.0,0.0,1.0);
My understanding is that internally roofit implements the fixed boundary constraint [0,1] by performing an “arcsin” transformation
The boundaries for the parameter “b” depend upon the value of the parameter “a” : namely “b” must be within the range [-3/4(1-a), +3/4(1-a)]
How can I implement such a “dynamic” constraint in roofit in such a way that its internal representation is again made with an “arcsin” transformation ?

Many thanks,

  • Mauro.


We do not have support in ROOT for non trivial constraints in the minimization (Minuit), which are functions of the parameters. Only simple bounds are supported. Sometimes a parameter transformation is sufficient to transform a complex constraint in a simple bound. Otherwise you need to use a different minimization algorithm
which support constraints. Commercial packages like NagC provide such algorithms

Best Regards