Example #1
0
import pandas as pd
from tabulate import tabulate
# The following imports NEED to be in the exact order
from cadCAD.engine import ExecutionMode, ExecutionContext, Executor
# from simulations.validation import config1_test_pipe
# from simulations.validation import config1
from simulations.validation import write_simulation
from cadCAD import configs

exec_mode = ExecutionMode()

first_config = configs # only contains config1
single_proc_ctx = ExecutionContext(context=exec_mode.single_proc)
run = Executor(exec_context=single_proc_ctx, configs=first_config)

raw_result, _ = run.main()
result = pd.DataFrame(raw_result)
result.to_csv('simulations/external_data/output.csv', index=False)

print("Output:")
print(tabulate(result, headers='keys', tablefmt='psql'))
print()
Example #2
0
import pandas as pd
from tabulate import tabulate
# The following imports NEED to be in the exact order
from cadCAD.engine import ExecutionMode, ExecutionContext, Executor
from cadCAD import configs

exec_mode = ExecutionMode()

print("Simulation Execution: Single Configuration")
print()
first_config = configs  # only contains config1
single_proc_ctx = ExecutionContext(context=exec_mode.single_proc)
run = Executor(exec_context=single_proc_ctx, configs=first_config)

raw_result, tensor_field = run.main()
result = pd.DataFrame(raw_result)
print()
print("Tensor Field: config1")
print(tabulate(tensor_field, headers='keys', tablefmt='psql'))
print("Output:")
print(tabulate(result, headers='keys', tablefmt='psql'))
print(result[['network']])
print()

print(result[['network', 'substep']])
# The configurations above are then packaged into a `Configuration` object
config = Configuration(
    initial_state=
    initial_conditions,  #dict containing variable names and initial values
    partial_state_update_blocks=
    partial_state_update_blocks,  #dict containing state update functions
    sim_config=simulation_parameters  #dict containing simulation parameters
)

# In[25]:

exec_mode = ExecutionMode()
exec_context = ExecutionContext(exec_mode.single_proc)
executor = Executor(exec_context,
                    [config])  # Pass the configuration object inside an array
raw_result, tensor = executor.main(
)  # The `main()` method returns a tuple; its first elements contains the raw results

# In[26]:

df = pd.DataFrame(raw_result)

# In[172]:

df.tail(5)

# In[28]:

df.supply.plot()

# In[29]: