Limitations¶
Currently the BPTK_Py framework is geared towards our own need and has a number of limitations. We are more than happy to extend the framework to suit YOUR need, so please let us what you need so that we can prioritize our activities. You can reach us at support@transentis.com
Here are the known limitations:
Currently the simulator only supports the Euler method, RungeKutta Integration is not supported.
The SD model transpiler for XMILE models only supports regular stocks, flows, biflows and converters. Nonnegative stocks and discrete modeling elements (such as ovens and conveyors) are not supported.
The random number operators (LOGNORMAL, LOGISTIC etc.) support seed but uses the Python seed and random number generator as the Stella Architect random number function is not open source. Secondly, these operators only support the mandatory arguments (usually mean/scale/stddev) as given in in the Stella documentation
The following table gives an overview of all XMILE builtins, whether they are supported by the SD model transpiler for XMILE and their equivalent in the SD DSL library – blank cells indicate that the operator is currently not supported. We are working hard to ensure support for all operators is included ASAP. Builtins pertaining to discrete elements are not listed.
BuiltIn 
SD model transpiler 
SD DSL equivalent 
ABS 
x 
abs 
AND 
x 
And 
ARCCOS 
x 
arccos 
ARCSIN 
x 
arcsin 
ARCTAN 
x 
arctan 
BETA 
x 
beta 
BINOMIAL 
x 
binomial 
COMBINATIONS 
x 
combinations 
COS 
x 
cos 
CGROWTH 
x 

CLOCKTIME 
x 

COSWAVE 
x 
coswave 
COUNTER 
x 

DELAY 
x 
delay 
DELAY1 
x 

DELAY3 
x 

DELAYN 
x 

DERIVN 
x 

DT 
x 
dt 
ELSE 
x 
If 
EXP 
x 
exp 
EXPRND 
x 
exprnd 
ENDVAL 
x 

FACTORIAL 
x 
factorial 
FORCST 
x 

FV 
x 

GAMMA 
x 
gamma 
GAMMALN 
x 
gammaln 
GEOMETRIC 
x 
geometric 
HISTORY 
x 

IF 
x 
If 
INF 
x 
Inf 
INTERPOLATE 
x 

INIT 
x 

INT 
x 

INVNORM 
x 

IRR 
x 

LOG10 
x 

LOGISTIC 
x 
logistic 
LOGNORMAL 
x 
lognormal 
LOOKUP 
x 
lookup 
LOOKUPAREA 
x 

LOOKUPINV 
x 

LN 
x 

MAX 
x 
max 
MEAN 
x 

MIN 
x 
min 
MOD 
x 
% (simply use the Python mod operator) 
MONTECARLO 
x 
montecarlo 
NAN 
x 
nan 
NEGBINOMIAL 
x 

NORMAL 
x 

NORMALCDF 
x 

NOT 
x 
Not 
NPV 
x 

OR 
x 
Or 
PARETO 
x 
pareto 
PERCENT 
x 

PERMUTATIONS 
x 
permutations 
PI 
x 
pi 
PMT 
x 

POISSON 
x 
poisson 
PREVIOUS 
x 

PULSE 
x 
pulse 
PV 
x 

PROD 
x 

RANDOM 
x 
random 
RANK 
x 

RAMP 
x 

REWORK 

ROUND 
x 
round 
ROOTN 
x 

RUNCOUNT 

SAFEDIV 
x 

SELF 
x 

SENSIRUNCOUNT 

SIN 
x 
sin 
SINWAVE 
x 
sinwave 
SIZE 
x 

SMTH1 
x 
smooth 
SMTH3 
x 

SMTHN 
x 

SQRT 
x 
sqrt 
STARTTIME 
x 
starttime 
STDDEV 
x 

STEP 
x 
step 
STOPTIME 
x 
stoptime 
SUM 
x 

TAN 
x 
tan 
THEN 
x 
if 
TIME 
x 
time 
TREND 
x 
trend 
TRIANGULAR 
x 
triangular 
UNIFORM 
x 
uniform 
WEIBULL 
x 
weibull 