Freigeben über


piecewise_linear_distribution::piecewise_linear_distribution

Erstellt die Verteilung.

 // default constructor piecewise_linear_distribution();  // constructs using a range of intervals, [firstI, lastI), with // matching weights starting at firstW template<class InputIteratorI, class InputIteratorW> piecewise_linear_distribution(InputIteratorI firstI, InputIteratorI lastI, InputIteratorW firstW);  // constructs using an initializer list for range of intervals, // with weights generated by function weightfunc template<class UnaryOperation> piecewise_linear_distribution(initializer_list<RealType> intervals, UnaryOperation weightfunc);  // constructs using an initializer list for range of count intervals, // distributed uniformly over [xmin,xmax] with weights generated by function weightfunc template<class UnaryOperation> piecewise_linear_distribution(size_t count, RealType xmin, RealType xmax, UnaryOperation weightfunc);  // constructs from an existing param_type structure explicit piecewise_linear_distribution(const param_type& parm); 

Parameter

  • firstI
    Ein Eingabeiterator für das erste Element im Verteilungsbereich.

  • lastI
    Ein Eingabeiterator für das letzte Element im Verteilungsbereich.

  • firstW
    Ein Eingabeiterator für das erste Element im Gewichtsbereich.

  • intervals
    Eine initializer_list mit den Intervallen der Verteilung.

  • count
    Die Anzahl von Elementen im Verteilungsbereich.

  • xmin
    Der niedrigste Wert im Verteilungsbereich.

  • xmax
    Der höchste Wert im Verteilungsbereich. Muss größer sein als xmin.

  • weightfunc
    Das Objekt, das die Wahrscheinlichkeitsfunktion für die Verteilung darstellt. Sowohl der Parameter als auch der Rückgabewert müssen in double konvertierbar sein.

  • parm
    Die für die Erstellung der Verteilung verwendete Parameterstruktur.

Hinweise

Der Standardkonstruktor legt die gespeicherten Parameter so fest, dass es nur ein Intervall, 0 bis 1, mit einer Wahrscheinlichkeitsdichte von 1 gibt.

Der Iteratorbereichskonstruktor

template<class InputIteratorI, class InputIteratorW>
piecewise_linear_distribution(InputIteratorI firstI, InputIteratorI lastI,
        InputIteratorW firstW);

erstellt ein Verteilungsobjekt mit Intervallen von Iteratoren über die Sequenz [firstI, lastI) und einer passenden Gewichtssequenz, die mit firstW beginnt.

Der Initialisiererlistenkonstruktor

template<class UnaryOperation>
piecewise_linear_distribution(initializer_list<RealType> intervals, 
        UnaryOperation weightfunc);

erstellt ein Verteilungsobjekt mit Intervallen aus der Initialisiererliste intervals und aus der Funktion weightfunc erzeugten Gewichten.

Der als

template<class UnaryOperation>
piecewise_linear_distribution(size_t count, RealType xmin, RealType xmax,
        UnaryOperation weightfunc);

definierte Konstruktor erstellt ein Verteilungsobjekt mit count gleichmäßig über [xmin,xmax] verteilten Intervallen und weist jedem Intervall Gewichte entsprechend der Funktion weightfunc zu, und weightfunc muss einen Parameter übernehmen und einen Rückgabewert haben, die beide in double konvertierbar sind. Vorbedingung: xmin < xmax.

Der als

explicit piecewise_linear_distribution(const param_type& parm);

definierte Konstruktor erstellt ein Verteilungsobjekt mit parm als gespeicherte Parameterstruktur.

Anforderungen

Header: <random>

Namespace: std

Siehe auch

Referenz

<random>

piecewise_linear_distribution-Klasse