def __init__(self, analytical=False, tag=None):
# Custom function mappings used for lamdify.
# TODO: this should be handled by addFuncs now.
if analytical:
self.sym2func = {"ceiling":a_umath.ceil, "Max":uwrap(SoftMaximum)}
self.conv2analytical = self.conv2analytical_simple_compression
#self.conv2analytical = self.conv2analytical_GMM
else:
self.sym2func = {"ceiling":umath.ceil}
self.tag = tag
self.analytical = analytical # Use analytical methods or MC.
self.idx_bounds = {} # Bounds for index symbols, key type: string
self.syms = {} # Symbolics used in system modeling, key type: string
self.exprs_str = [] # Original string representation of expressions.
self.exprs = [] # Sympy understandable parsed expressions.
self.given = {} # Inputs to model evaluation, key type: symbol
self.intermediates = {} # Uncertain dependent variables, key type: symbol
self.response = set() # set of symbols.
self.ordered_given = [] # List of symbols.
self.sol_inter_set = {} # Intermediate solution set, key type: symbol
self.inter_funcs = {} # Lamdified callables for intermediate vars, key type: symbol
self.sol_final_set = {} # Final solution set, key type: symbol
self.target_funcs = {} # Lamdified callables for response vars, key type: symbol
self.opts = [] # varibles left to optimize.
self.parser = Parser()
npts = 100000
评论列表
文章目录