Ejemplo n.º 1
0
def make_vector_field(formula1, formula2, formula3):
    in_field = None
    compiled1 = sv_compile(formula1)
    compiled2 = sv_compile(formula2)
    compiled3 = sv_compile(formula3)

    def function(x, y, z, V):
        variables = dict(x=x, y=y, z=z, V=V)
        v1 = safe_eval_compiled(compiled1, variables)
        v2 = safe_eval_compiled(compiled2, variables)
        v3 = safe_eval_compiled(compiled3, variables)
        return v1, v2, v3

    field = SvExVectorFieldLambda(function, None, in_field)
    return field
Ejemplo n.º 2
0
def compile_spreadsheet(src_dict, col_names):
    result = src_dict.copy()
    for row_name in src_dict:
        for col_name in col_names:
            if col_name in src_dict[row_name]:
                formula = src_dict[row_name][col_name]
                if formula and isinstance(formula, str):
                    result[row_name][col_name] = sv_compile(formula)
    return result
Ejemplo n.º 3
0
def make_scalar_field(formula):
    in_field = None
    compiled = sv_compile(formula)

    def function(x, y, z, V):
        variables = dict(x=x, y=y, z=z, V=V)
        return safe_eval_compiled(compiled, variables)

    field = SvExScalarFieldLambda(function, None, in_field)
    return field