Compartilhar via


piecewise_linear_distribution::piecewise_linear_distribution

Constrói a distribuição.

 // 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); 

Parâmetros

  • firstI
    Um iterador de entrada do primeiro elemento no intervalo de distribuição.

  • lastI
    Um iterador de entrada do último elemento no intervalo de distribuição.

  • firstW
    Um iterador de entrada do primeiro elemento no intervalo de pesos.

  • intervals
    Uma initializer_list com os intervalos da distribuição.

  • count
    O número de elementos no intervalo de distribuição.

  • xmin
    O valor mais baixo no intervalo de distribuição.

  • xmax
    O valor mais alto no intervalo de distribuição. Deve ser maior que xmin.

  • weightfunc
    O objeto que representa a função de probabilidade para a distribuição. Deve ser possível converter o valor retornado e o parâmetro em double.

  • parm
    A estrutura do parâmetro usada para construir a distribuição.

Comentários

O construtor padrão define os parâmetros armazenados de modo que haja um intervalo, 0 a 1, com uma densidade de probabilidade de 1.

O construtor do intervalo do iterador

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

constrói um objeto de distribuição com intervalos de iteradores sobre a sequência [firstI, lastI) e uma sequência de peso correspondente começando em firstW.

O construtor da lista do inicializador

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

constrói um objeto de distribuição com intervalos da lista do inicializador intervals e pesos gerados da função weightfunc.

O construtor definido como

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

constrói um objeto de distribuição com intervalos count distribuídos uniformemente sobre [xmin,xmax], atribuindo a cada intervalo pesos de acordo com a função weightfunc, e weightfunc deve aceitar um parâmetro e ter um valor retornado, sendo que ambos podem ser convertidos para double. Precondition: xmin < xmax.

O construtor definido como

explicit piecewise_linear_distribution(const param_type& parm);

constrói um objeto de distribuição usando parm como estrutura de parâmetro armazenada.

Requisitos

Cabeçalho: <random>

Namespace: std

Consulte também

Referência

<random>

Classe piecewise_linear_distribution