Inherits From:- SwarmObject

Declared In:- BFCast.h

`double`

forecast;

`double`

lforecast;

`double`

variance;

`double`

strength;

`double`

a;

`double`

b;

`double`

c;

`double`

specfactor;

`double`

bitcost;

`BitVector *`

conditions;

`int`

lastactive;

`int`

specificity;

`int`

count;

`int`

condwords;

`int`

condbits;

`int`

nnulls;

forecast this forecast of return lforecast previous forecast variance variance of this forecast strength strength=maxdev - variance +specfactor. This was the original sfsm specification, not the ASM-2.0 specification a (price + dividend) coefficient b dividend coefficient c constant term specfactor specificty=(condbits - nnulls - specificity)* bitcost. bitcost cost of using bits in forecasts conditions a BitVector object that holds records on which conditions in the world are being monitored by this forecast object lastactive last time period in which this forecast was active specificity specificity count number of times this forecast has been active condwords number of words of memory needed to hold the conditions condbits number of bits of information monitored by this forecast nnulls number of 'unused' bits that remain in the allocated vector after the 'condbits' bits have been used

- - createEnd
- - incrSpecificity
- - decrSpecificity
- - setSpecificity:
- - getSpecificity
- - setConditions:
- - getConditions
- - getConditionsObject
- - setNNulls:
- - setBitcost:
- - setConditionsWord:To:
- - getConditionsWord:
- - setConditionsbit:To:
- - setConditionsbit:FromZeroTo:
- - maskConditionsbit:
- - switchConditionsbit:
- - getConditionsbit:
- - setAval:
- - setBval:
- - setCval:
- - getAval
- - getBval
- - getCval
- - updateSpecfactor
- - setSpecfactor:
- - getSpecfactor
- - setVariance:
- - getVariance
- - setCondwords:
- - setCondbits:
- - setForecast:
- - getForecast
- - updateForecastPrice:Dividend:
- - setLforecast:
- - getLforecast
- - setLastactive:
- - getLastactive
- - setCnt:
- - getCnt
- - incrCount
- - setStrength:
- - getStrength
- - copyEverythingFrom:
- - printcond:
- - drop

`- `

**copyEverythingFrom:**(BFCast *)*from*

Given an input forecast object, systematically ask it for all its IVARs and replace current settings with them.

`- `

**createEnd**

No method description.

`- (void)`

**decrSpecificity**

Reduce the specificity value of this forecast by one unit

`- (void)`

**drop**

Free dynamically allocated memory

`- (double)`

**getAval**

Return a coefficient from demand equation

`- (double)`

**getBval**

Return b coefficient from demand equation

`- (int)`

**getCnt**

Return the value of count

`- (int *)`

**getConditions**

Returns a pointer to an array, the integer representation of the conditions

`- (BitVector *)`

**getConditionsObject**

Returns an object of type BitVector, the represnetation of conditions that is actually used inside this class or calculations

`- (int)`

**getConditionsWord:**(int)*x*

Returns the integer representation of the *x*'th word in the
conditions

`- (int)`

**getConditionsbit:**(int)*bit*

Returns 0,1,or 2, for a given *bit* in the conditions records

`- (double)`

**getCval**

Return c coefficient from demand equation

`- (double)`

**getForecast**

Return forecast from this object

`- (int)`

**getLastactive**

Return the time on which this forecast was last active

`- (double)`

**getLforecast**

Get forecast from the previous time period

`- (double)`

**getSpecfactor**

Return the specfactor value of this forecast

`- (int)`

**getSpecificity**

Return the specificity of this forecast

`- (double)`

**getStrength**

Return strength of this forecast

`- (double)`

**getVariance**

Return the variance of this forecast

`- (int)`

**incrCount**

Increment this forecast's count variable

`- (void)`

**incrSpecificity**

Raise the specificity value of this forecast by one unit

`- (void)`

**maskConditionsbit:**(int)*bit*

No method description.

`- `

**print**

Return some disgnostic information about the status of variables inside this forecast to the terminal

`- `

**printcond:**(int)*conditions*

No method description.

`- (void)`

**setAval:**(double)*x*

Set a coefficient from demand equation

`- (void)`

**setBitcost:**(double)*x*

Set the variable bitcost at *x*

`- (void)`

**setBval:**(double)*x*

Set b coefficient from demand equation

`- (void)`

**setCnt:**(int)*x*

Set the count variable to an inputted value

`- (void)`

**setCondbits:**(int)*x*

Sets the number of bits. This is the number of aspect of the world that are monitored

`- (void)`

**setConditions:**(int *)*x*

Rather than individually set bits one by one, we might want to set all of them at once. That means we pass in a pointer to an array of words that is the "right size" for all the bits.

`- (void)`

**setConditionsWord:**(int)*i* **To:**(int)*value*

For low level access to a full word's-worth of the condition

`- (void)`

**setConditionsbit:**(int)*bit* **FromZeroTo:**(int)*x*

If a *bit* is currently set to 0 ("don't care"), then change it to
something else (1 or 2)

`- (void)`

**setConditionsbit:**(int)*bit* **To:**(int)*x*

Sets the value of a *bit* in the conditions

`- (void)`

**setCondwords:**(int)*x*

Sets the number of words-worth's of conditions that are going to be used

`- (void)`

**setCval:**(double)*x*

Set c coefficient from demand equation

`- (void)`

**setForecast:**(double)*x*

Set the forecast of this object to an inputted value

`- (void)`

**setLastactive:**(int)*x*

Set the time on which this forecast was last active to an input value

`- (void)`

**setLforecast:**(double)*x*

Set the previous forecast of this object to an inputted value

`- (void)`

**setNNulls:**(int)*x*

Null bits may be needed if the bit vector that is allocated is larger than the number of conditions being monitored. Since a bitvector allocates space in sizes of words, this might be important. Luckily, in the current design of ASM-2.0 (and after), there are no null bits.

`- (void)`

**setSpecfactor:**(double)*x*

Set the specfactor value of this forecast

`- (void)`

**setSpecificity:**(int)*specificity*

Set the *specificity* of this forecast

`- (void)`

**setStrength:**(double)*x*

Set the strength value to an inputted value

`- (void)`

**setVariance:**(double)*x*

Set the variance of this forecast

`- (void)`

**switchConditionsbit:**(int)*bit*

Change a YES to a NO, and vice versa

`- (double)`

**updateForecastPrice:**(double)*price* **Dividend:**(double)*dividend*

Calculate new forecast on basis of *price* and *dividend* information

`- (void)`

**updateSpecfactor**

Update the spec factor of this forecast. That means calculate: specfactor= (condbits - nnulls - specificity)* bitcost

Version 1.1 Copyright ©2001. All Rights Reserved.