SEVN
Loading...
Searching...
No Matches
BJIT_Property Class Reference

#include <BinaryProperty.h>

Inheritance diagram for BJIT_Property:
Derived_Property_Binary BinaryProperty

Public Types

typedef std::map< std::string, size_t > _PrintMap
 

Public Member Functions

std::string name () override
 
int evolve (_UNUSED Binstar *binstar) override
 
double get (_UNUSED const Binstar *b=nullptr) override
 
void restore () override
 
virtual BinaryPropertyInstance ()
 
virtual std::string units ()
 
virtual int getID () const
 
virtual void resynch (_UNUSED const double &dt, _UNUSED bool set0=true)
 
virtual void check_boundaries (_UNUSED double *val, _UNUSED Binstar *binstar)
 
virtual int special_evolve (_UNUSED Binstar *binstar)
 
double get_variation (Binstar *binstar) const
 
virtual int set_broken (_UNUSED Binstar *binstar)
 
double get_0 (_UNUSED const Binstar *b=nullptr)
 

Static Public Attributes

static std::vector< BinaryProperty * > all
 
static _PrintMap PrintMap
 

Protected Member Functions

virtual void specialised_set (_UNUSED const Binstar *b=nullptr)
 
bool new_estimate_needed ()
 
void set (const double &a) override
 
void Register (BinaryProperty *_p, size_t *id, const std::string &_name)
 
bool isbad (const double &val)
 
virtual void set_0 (const double &a)
 

Protected Attributes

std::uniform_real_distribution< double > _uniform_real
 
SevnLogging svlog
 
double V
 
double V0
 

Private Member Functions

void init_derived (_UNUSED Binstar *binstar) override
 
void init (_UNUSED const double par) override
 
virtual bool amiderived ()
 

Private Attributes

unsigned int last_evolve_number =0
 
unsigned int evolve_number =0
 

Static Private Attributes

static size_t size = 0
 

Detailed Description

Derived class for properties that are derived from other properties JIT means Just in Time, these are properties that do not need to be evolved at each time step, but just to be computed when needed.

Member Typedef Documentation

◆ _PrintMap

typedef std::map<std::string,size_t> BinaryProperty::_PrintMap
inherited

Member Function Documentation

◆ amiderived()

virtual bool Derived_Property_Binary::amiderived ( )
inlineprivatevirtualinherited

◆ check_boundaries()

virtual void BinaryProperty::check_boundaries ( _UNUSED double *  val,
_UNUSED Binstar binstar 
)
inlinevirtualinherited

◆ evolve()

int BJIT_Property::evolve ( _UNUSED Binstar binstar)
inlineoverridevirtual

Reimplemented from BinaryProperty.

◆ get()

double BJIT_Property::get ( _UNUSED const Binstar b = nullptr)
inlineoverridevirtual

Reimplemented from BinaryProperty.

◆ get_0()

double BinaryProperty::get_0 ( _UNUSED const Binstar b = nullptr)
inlineinherited

◆ get_variation()

double BinaryProperty::get_variation ( Binstar binstar) const
inherited

Get the variation expected for a given property just summing all the DVs due to all processes. This is equivalent to evolve, but without checks and without changing V0 and V

Parameters
binstarPointer to the binary from wich to take the processes variations
Returns
The DV for this property considering all the DV from the processes

◆ getID()

virtual int BinaryProperty::getID ( ) const
inlinevirtualinherited

◆ init()

void Derived_Property_Binary::init ( _UNUSED const double  par)
inlineoverrideprivatevirtualinherited

Reimplemented from BinaryProperty.

◆ init_derived()

void Derived_Property_Binary::init_derived ( _UNUSED Binstar binstar)
inlineoverrideprivatevirtualinherited

Reimplemented from BinaryProperty.

◆ Instance()

virtual BinaryProperty * BinaryProperty::Instance ( )
inlinevirtualinherited

◆ isbad()

bool BinaryProperty::isbad ( const double &  val)
inlineprotectedinherited

◆ name()

std::string BJIT_Property::name ( )
inlineoverridevirtual

Reimplemented from BinaryProperty.

◆ new_estimate_needed()

bool BJIT_Property::new_estimate_needed ( )
inlineprotected

◆ Register()

void BinaryProperty::Register ( BinaryProperty _p,
size_t *  id,
const std::string &  _name 
)
inlineprotectedinherited

◆ restore()

void BJIT_Property::restore ( )
inlineoverridevirtual

Reimplemented from BinaryProperty.

◆ resynch()

virtual void BinaryProperty::resynch ( _UNUSED const double &  dt,
_UNUSED bool  set0 = true 
)
inlinevirtualinherited

◆ set()

void BJIT_Property::set ( const double &  a)
inlineoverrideprotectedvirtual

Reimplemented from BinaryProperty.

◆ set_0()

virtual void BinaryProperty::set_0 ( const double &  a)
inlineprotectedvirtualinherited

◆ set_broken()

virtual int BinaryProperty::set_broken ( _UNUSED Binstar binstar)
inlinevirtualinherited

Reimplemented in BWorldtime, and BTimestep.

◆ special_evolve()

virtual int BinaryProperty::special_evolve ( _UNUSED Binstar binstar)
inlinevirtualinherited

Reimplemented in BWorldtime, BTimestep, and BEvent.

◆ specialised_set()

virtual void BJIT_Property::specialised_set ( _UNUSED const Binstar b = nullptr)
inlineprotectedvirtual

◆ units()

virtual std::string BinaryProperty::units ( )
inlinevirtualinherited

Member Data Documentation

◆ _uniform_real

std::uniform_real_distribution<double> BinaryProperty::_uniform_real
protectedinherited

◆ all

std::vector< BinaryProperty * > BinaryProperty::all
staticinherited

◆ evolve_number

unsigned int BJIT_Property::evolve_number =0
private

◆ last_evolve_number

unsigned int BJIT_Property::last_evolve_number =0
private

◆ PrintMap

BinaryProperty::_PrintMap BinaryProperty::PrintMap
staticinherited

◆ size

size_t BinaryProperty::size = 0
staticprivateinherited

Instruction for adding new property BPROP 1- Add the size_t BPROP::ID 2- Initialise the static (fake) instance BPROP BPROP::_bprop. NB: take care of the order of initilisation. The properties will be evolved exactly in the same order in which they are initialised here Define: @size: total number of instances of BinaryProperty and derived classes (both fake and real). @all: vector containing all the (pointers) to the BinaryProperty. @PrintMap: map containing the pair (BinaryProperty_name, BinaryProperty_id) for output purpose. Note all and PrintMap are filled during the instantiation of the fake Processes (see below)

◆ svlog

SevnLogging BinaryProperty::svlog
protectedinherited

◆ V

double BinaryProperty::V
protectedinherited

◆ V0

double BinaryProperty::V0
protectedinherited

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