Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
if options.flatten_only:
# Load folder
_ast = None
for root, dir, files in os.walk(model_folder, followlinks=True):
for item in fnmatch.filter(files, "*.mo"):
logger.info("Parsing {}".format(item))
with open(os.path.join(root, item), 'r') as f:
if _ast is None:
_ast = parser.parse(f.read())
else:
_ast.extend(parser.parse(f.read()))
logger.info("Flattening")
_ast = tree.flatten(_ast, ast.ComponentRef.from_string(model_name))
print(_ast)
else:
# Set CasADi installation folder
if options.casadi_folder is not None:
sys.path.append(options.casadi_folder)
from pymoca.backends.casadi.api import transfer_model
import casadi as ca
logger.info("Generating CasADi model")
compiler_options = \
{'replace_constants': True,
'replace_parameter_expressions': True,
'eliminable_variable_expression': r'_\w+',
'detect_aliases': True,