NEST main@caf0ae8
 
Loading...
Searching...
No Matches
nest::ProductParameter Class Reference

Parameter class representing the product of two parameters. More...

#include <parameter.h>

Inheritance diagram for nest::ProductParameter:
[legend]
Collaboration diagram for nest::ProductParameter:
[legend]

Public Member Functions

 ProductParameter (const ParameterPTR m1, const ParameterPTR m2)
 Construct the product of the two given parameters.
 
 ProductParameter (const ProductParameter &p)
 
double value (RngPtr rng, Node *node) override
 
double value (RngPtr rng, const std::vector< double > &source_pos, const std::vector< double > &target_pos, const AbstractLayer &layer, Node *node) override
 Generates a value based on parameter specifications and arguments.
 
- Public Member Functions inherited from nest::Parameter
 Parameter (bool is_spatial=false, bool returns_int_only=false)
 Creates a Parameter, with optionally specified attributes.
 
 Parameter (const Parameter &p)=default
 
virtual ~Parameter ()=default
 
std::vector< double > apply (const NodeCollectionPTR &, const std::vector< std::vector< double > > &)
 Applies a parameter on a single-node ID NodeCollection and given array of positions.
 
bool is_spatial () const
 Check if the Parameter is based on spatial properties.
 
bool returns_int_only () const
 Check if the Parameter only returns integer values.
 

Protected Attributes

ParameterPTR const parameter1_
 
ParameterPTR const parameter2_
 
- Protected Attributes inherited from nest::Parameter
bool is_spatial_ { false }
 
bool returns_int_only_ { false }
 

Additional Inherited Members

- Protected Member Functions inherited from nest::Parameter
bool value_is_integer_ (const double value) const
 

Detailed Description

Parameter class representing the product of two parameters.

Constructor & Destructor Documentation

◆ ProductParameter() [1/2]

nest::ProductParameter::ProductParameter ( const ParameterPTR  m1,
const ParameterPTR  m2 
)
inline

Construct the product of the two given parameters.

Copies are made of the supplied Parameter objects.

◆ ProductParameter() [2/2]

nest::ProductParameter::ProductParameter ( const ProductParameter &  p)
inline

Member Function Documentation

◆ value() [1/2]

double nest::ProductParameter::value ( RngPtr  rng,
const std::vector< double > &  source_pos,
const std::vector< double > &  target_pos,
const AbstractLayer &  layer,
Node *  node 
)
inlineoverridevirtual

Generates a value based on parameter specifications and arguments.

Used when connecting spatial nodes. Note that not all parameters support all overloaded versions.

Parameters
rngpointer to the random number generator
source_posposition of the source node
target_posposition of the target node
layerspatial layer
nodetarget node, required for normal and lognormal parameters
Returns
the value of the parameter.

Reimplemented from nest::Parameter.

References parameter1_, and parameter2_.

◆ value() [2/2]

double nest::ProductParameter::value ( RngPtr  rng,
Node *  node 
)
inlineoverridevirtual
Returns
the value of the product.

Reimplemented from nest::Parameter.

References parameter1_, and parameter2_.

Member Data Documentation

◆ parameter1_

ParameterPTR const nest::ProductParameter::parameter1_
protected

Referenced by value(), and value().

◆ parameter2_

ParameterPTR const nest::ProductParameter::parameter2_
protected

Referenced by value(), and value().


The documentation for this class was generated from the following file: