English Français

Documentation / Manuel développeur

Modules disponibles

Calibration,  DataServer,  Launcher,  MetaModelOptim,  Modeler,  Optimizer,  ReLauncher,  Reliability,  ReOptimizer,  Sampler,  Sensitivity,  UncertModeler,  XmlProblem,   Uranie / Sampler: URANIE::Sampler::TPlackettCopula Class Reference
Uranie / Sampler v4.9.0
/* @license-end */
URANIE::Sampler::TPlackettCopula Class Reference

Description of the class TPlackettCopula. More...

#include <TPlackettCopula.h>

Inheritance diagram for URANIE::Sampler::TPlackettCopula:
Collaboration diagram for URANIE::Sampler::TPlackettCopula:

Public Member Functions

Constructor and Destructor
 TPlackettCopula (URANIE::DataServer::TDataServer *tds, Double_t dparam, Int_t nCalcul)
 Default constructor.
 
virtual ~TPlackettCopula ()
 Default destructor.
 
Generation of the sample
void generateUMatrix (Option_t *option)
 Generates the matrix of U.
 
Printing Log
virtual void printLog (Option_t *option="")
 Prints the log.
 
- Public Member Functions inherited from URANIE::Sampler::TArchimedianCopula
 TArchimedianCopula (URANIE::DataServer::TDataServer *tds, Double_t dparam, Int_t nCalcul)
 Default constructor.
 
virtual ~TArchimedianCopula ()
 Default destructor.
 
- Public Member Functions inherited from URANIE::Sampler::TCopula
 TCopula (URANIE::DataServer::TDataServer *tds, Option_t *option, Int_t nCalcul)
 Constructor with a TDataServer, the options and the size of the sample.
 
virtual ~TCopula ()
 Default destructor.
 
void generateSample (Option_t *option="")
 Generates the sample.
 
- Public Member Functions inherited from URANIE::Sampler::TSamplerStochastic
 TSamplerStochastic (URANIE::DataServer::TDataServer *tds, Option_t *option, Int_t nCalcul)
 Constructor with a dataserver.
 
virtual ~TSamplerStochastic ()
 Default destructor.
 
void setSeed (Int_t ind=0)
 Init the seed.
 
Int_t getSeed ()
 Returns the seed value.
 
- Public Member Functions inherited from URANIE::Sampler::TSampler
 TSampler (URANIE::DataServer::TDataServer *tds, Option_t *option, Int_t nCalcul)
 Constructor with a TDataServer, the options and the size of the sample.
 
virtual ~TSampler ()
 Default destructor.
 
Int_t GetID ()
 Returns the ID of the class.
 
void setMethodName (TString str)
 Sets the method name in a global variable.
 
TString getMethodName ()
 Gets the method name.
 
virtual URANIE::DataServer::TDataServer * getTDS ()
 Return the TDS filling by the sampling algorithm.
 
void parseOption (Option_t *option)
 Parse the option.
 
virtual void createListOfAttributes ()
 Creates the List of attributes to simulate.
 
virtual void createTuple ()
 Creates the TDSNtupleD of data with only the TStochasticAttributes.
 
URANIE::DataServer::TDSNtupleD * getTuple ()
 Returns the TDSNtupleD of data.
 
virtual void fillOtherAttributes ()
 Fills the TDSNtupleD of data with other TFormulaAttributes.
 
void setLog ()
 
void unsetLog ()
 
void changeLog ()
 
Bool_t getLog ()
 

Additional Inherited Members

- Public Attributes inherited from URANIE::Sampler::TArchimedianCopula
Double_t _dparam
 the parameter of the archimediam copula
 
- Public Attributes inherited from URANIE::Sampler::TCopula
TMatrixD _matUValue
 The matrix of U values

 
- Public Attributes inherited from URANIE::Sampler::TSampler
Int_t _nS
 The size of the sample.
 
Int_t _nX
 The size of attributes to sample.
 
URANIE::DataServer::TDSNtupleD * _ntsample
 the tntuple of data
 
TString _sMethod
 The title of the sampler method.
 
Bool_t _blog
 Log Printing.
 
Bool_t _bupdateFile
 Update the back up file when generating the attributeformula if there is some.
 
URANIE::DataServer::TDataServer * _tds
 Pointer to a TDS.
 
TList * _lstOfAttributesToSample
 The list of Stochastic Attributes to sample.
 
- Protected Member Functions inherited from URANIE::Sampler::TSamplerStochastic
virtual void init ()
 The preprocessing step.
 
virtual void terminate ()
 The post-processing step.
 
- Protected Attributes inherited from URANIE::Sampler::TSamplerStochastic
Int_t _nSeed
 

Detailed Description

Description of the class TPlackettCopula.

The Plackett copula for bivariate is defined by the formula

\[
C(u_1, u_2 ; \theta) \: = \: \frac{\left( [ 1 + (\theta - 1)(u_1+u_2)] - \sqrt{[1+(\theta - 1)(u_1+u_2)]^2 - 4 uv\theta(\theta-1)}\right)}{2(\theta-1)} \: , \: \theta > 0, \theta \neq 1
\]

and

\[
C(u_1, u_2 ; \theta) \: = \: u_1 u_2 \:, \: \theta = 1.0
\]

with $\theta \in [0, \infty]$.

Implementation
We use the Johnson algorithm (1986) to generate random variates $ (u,v)$ from a Plackett distribution with parameter $ \theta > 0$.
  • Generate two independent uniform variate $ (u,t) \in (0,1)$
  • Set $ a = t(1-t) $
    $ b = \theta + a(\theta-1)^2$
    $ c = 2a(u\theta^2 + 1 - u) + \theta(1 - 2a)$
    $ d = \sqrt{\theta}\sqrt{\theta + 4au(1 - u)(1 - \theta)^2}$
    $ v = \frac{c-(1-2t)d}{2b}$
  • the desired pair is $ (u,v)$

Constructor & Destructor Documentation

◆ TPlackettCopula()

URANIE::Sampler::TPlackettCopula::TPlackettCopula ( URANIE::DataServer::TDataServer *  tds,
Double_t  dparam,
Int_t  nCalcul 
)

Default constructor.

Referenced by ClassImp().

◆ ~TPlackettCopula()

virtual URANIE::Sampler::TPlackettCopula::~TPlackettCopula ( )
virtual

Default destructor.

Referenced by ClassImp().

Member Function Documentation

◆ generateUMatrix()

void URANIE::Sampler::TPlackettCopula::generateUMatrix ( Option_t *  option)
virtual

Generates the matrix of U.

Parameters
option(Option_t *) The option to pass.

Implements URANIE::Sampler::TCopula.

Referenced by ClassImp().

◆ printLog()

virtual void URANIE::Sampler::TPlackettCopula::printLog ( Option_t *  option = "")
virtual

Prints the log.

Reimplemented from URANIE::Sampler::TArchimedianCopula.

Referenced by ClassImp().