As an extra complication, some of the new parameters need to be functions of a mass parameter.
 
[#0] WARNING:InputArguments -- The parameter 'sigmaG' with range [-inf, inf] of the RooGaussian 'gauss' exceeds the safe range of (0, inf). Advise to limit its range.
The proto model before customisation:
0x7ffcbb2c7038 RooAddPdf::model = 750.5/1 [Auto,Clean] 
  0x7ffcbb2c59e0/V- RooGaussian::gauss = 0 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x7ffcbb2c7b40/V- RooRealVar::meanG = 100
    0x7ffcbb2c6480/V- RooRealVar::sigmaG = 3
  0x7ffcbb2c7f28/V- RooRealVar::yieldSig = 1
  0x7ffcbb2c5f38/V- RooPolynomial::linear = 1501 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x7ffcbb2c6868/V- RooRealVar::pol1 = 1
  0x7ffcbb2c6c50/V- RooRealVar::yieldBkg = 1
 
PDF 1 with a yield depending on M:
0x234a510 RooAddPdf::model_Sample1 = 1156.8/1 [Auto,Clean] 
  0x25a9770/V- RooGaussian::gauss_Sample1 = 0 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x1dabc00/V- RooRealVar::meanG_Sample1 = 100
    0x7ffcbb2c6480/V- RooRealVar::sigmaG = 3
  0x7ffcbb2c8e60/V- RooFormulaVar::yieldSig_Sample1 = 0.29755 [Auto,Clean] 
    0x7ffcbb2c8310/V- RooRealVar::M = 1
  0x7ffcbb2c5f38/V- RooPolynomial::linear = 1501 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x7ffcbb2c6868/V- RooRealVar::pol1 = 1
  0x7ffcbb2c6c50/V- RooRealVar::yieldBkg = 1
 
PDF 2 with a yield depending on M:
0x22aefc0 RooAddPdf::model_Sample2 = 1000.67/1 [Auto,Clean] 
  0x2516660/V- RooGaussian::gauss_Sample2 = 0 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x25595e0/V- RooRealVar::meanG_Sample2 = 100
    0x7ffcbb2c6480/V- RooRealVar::sigmaG = 3
  0x7ffcbb2c9298/V- RooFormulaVar::yieldSig_Sample2 = 0.5 [Auto,Clean] 
    0x7ffcbb2c8310/V- RooRealVar::M = 1
  0x7ffcbb2c5f38/V- RooPolynomial::linear = 1501 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x7ffcbb2c6868/V- RooRealVar::pol1 = 1
  0x7ffcbb2c6c50/V- RooRealVar::yieldBkg = 1
 
PDF 3 with a free yield:
0x37211a0 RooAddPdf::model_Sample3 = 750.5/1 [Auto,Clean] 
  0x24df000/V- RooGaussian::gauss_Sample3 = 0 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x24e0150/V- RooRealVar::meanG_Sample3 = 100
    0x7ffcbb2c6480/V- RooRealVar::sigmaG = 3
  0x2518740/V- RooRealVar::yieldSig_Sample3 = 1
  0x7ffcbb2c5f38/V- RooPolynomial::linear = 1501 [Auto,Dirty] 
    0x7ffcbb2c7758/V- RooRealVar::Energy = 1500
    0x7ffcbb2c6868/V- RooRealVar::pol1 = 1
  0x7ffcbb2c6c50/V- RooRealVar::yieldBkg = 1
 
The following leaves have been created automatically while customising:
  1) RooRealVar::    meanG_Sample1 = 100
  2) RooRealVar::    meanG_Sample2 = 100
  3) RooRealVar::    meanG_Sample3 = 100
  4) RooRealVar:: yieldSig_Sample3 = 1
 
The following leaves have been used while customising
   (partial overlap with the set of automatically created leaves.
   a new customiser for a different PDF could reuse them if necessary.):
  1) RooFormulaVar:: yieldSig_Sample1 = 0.29755
  2) RooFormulaVar:: yieldSig_Sample2 = 0.5
  3) RooRealVar::    meanG_Sample1 = 200
  4) RooRealVar::    meanG_Sample2 = 300
  5) RooRealVar::    meanG_Sample3 = 100
  6) RooRealVar:: yieldSig_Sample3 = 1