28#include "../base/Variant.h"
29#include "../base/PList.h"
30#include "../base/PComplexData.h"
31#include "../utility/PEBLUtility.h"
32#include "../utility/PError.h"
33#include "../utility/Defs.h"
34#include "../base/PEBLObject.h"
52#define PI 3.141592653589793238462643383279502884197169399375
53#define E 2.718281828459045235360287471352662497757247093700
77 std::vector<Variant>::iterator p = plist->
Begin();
78 while(p != plist->
End())
82 arglist =
new PList();
98 Variant result = funcname(tmpVariant);
139 std::vector<Variant>::iterator p = plist->
Begin();
149 while(p != plist->
End())
151 arglist =
new PList();
158 resultslist->
PushBack(funcname(tmp));
193#ifndef PEBL_EMSCRIPTEN
747 double remainder =((
pDouble)v1/v2 - (v1/v2));
748 if( remainder < 0 ) remainder += 1.0;
749 if(remainder >= 1.0) remainder = 0;
798 bool hasPoint =
false;
801 std::string::iterator i = tmp.begin();
803 while(i != tmp.end() && hasPoint ==
false)
969 time_t now = time(0);
970 srand((
unsigned int)now);
971 long unsigned int tmp = (
long unsigned int)now;
986 srand((
unsigned int)seed);
1017 int v1 = plist->
First();
1020 string message =
"Function [RandomDiscrete] requires argument >= 1; received ";
1022 message +=
". Returning 1.";
1028 unsigned int r = rand();
1050 std::ostringstream message;
1051 message <<
"Function [RandomUniform] requires argument >= 0; received "
1078 if(stdev < 0)
PError::SignalFatalError(
"Standard Deviation parameter of function [RandomNormal(<mean>,<stdev>)] must be positive.");
1148 for(
int i = 0; i < N; i++)
counted_ptr< PEBLObjectBase > GetObject() const
std::vector< Variant >::const_iterator End() const
std::vector< Variant >::const_iterator Begin() const
Variant Nth(unsigned int n)
unsigned long Length() const
void PushBack(const Variant &v)
std::string GetString() const
PComplexData * GetComplexData() const
bool IsNumber() const
This tests whether the Variant is a number (i.e., a float or an integer.)
Variant Sin(Variant v)
Sin takes one parameter.
Variant ToFloat(Variant v)
Variant ToString(Variant v)
Variant RandomBinomial(Variant v)
Variant NthRoot(Variant v)
Variant Recurse2(Variant v, Variant(*)(Variant), Variant argument)
Variant Recurse(Variant v, Variant(*)(Variant))
Variant SeedRNG(Variant v)
Variant RandomDiscrete(Variant v)
Variant RadToDeg(Variant v)
Variant AbsFloor(Variant v)
Variant RandomizeTimer(Variant v)
Variant RandomLogistic(Variant v)
Variant RandomUniform(Variant v)
Variant Random(Variant v)
Variant RandomExponential(Variant v)
Variant ToNumber(Variant v)
Variant DegToRad(Variant v)
Variant Ceiling(Variant v)
Variant RandomBernoulli(Variant v)
Variant RandomNormal(Variant v)
Variant RandomLogNormal(Variant v)
pDouble Log2(pDouble val)
pInt Truncate(pDouble val)
void SignalWarning(const std::string &message)
void AssertType(Variant v, int type, const std::string &outsidemessage)
void SignalFatalError(const std::string &message)