From 814ed0b906c6e855816394ee3cbe6730e630ff13 Mon Sep 17 00:00:00 2001 From: "Joshua E. Jodesty" Date: Tue, 2 Oct 2018 13:37:38 -0400 Subject: [PATCH] comments to JIRA transfer --- CAD_Engine.ipynb | 625 +++++++++++++++++++++++++++++++---------------- 1 file changed, 409 insertions(+), 216 deletions(-) diff --git a/CAD_Engine.ipynb b/CAD_Engine.ipynb index d60c6cb..e32980f 100644 --- a/CAD_Engine.ipynb +++ b/CAD_Engine.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 12, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -17,12 +17,14 @@ "from functools import partial\n", "import numpy as np\n", "from datetime import datetime, timedelta\n", - "from decimal import Decimal, MAX_EMAX" + "from decimal import Decimal, getcontext, ROUND_DOWN\n", + "getcontext().prec=4\n", + "getcontext().rounding = ROUND_DOWN" ] }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -72,7 +74,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -84,49 +86,7 @@ }, { "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [], - "source": [ - "# ToDo:\n", - "# Handle case where Mechanisms have no input. Perhaps the sentinel value of 0\n", - "# Mock Simulation SimCADUI Lucid chart \n", - "\n", - "# Filter by states at steps (in runtime)\n", - "\n", - "# No historical access beyond previous step\n", - "# problem, inconsistence between what you fillter and access\n", - "\n", - "# highlight / directly ref. steps within b, s, es mech func. defs\n", - "\n", - "# Can behaviors & state read steps / time\n", - "\n", - "# Play with this\n", - "# Time: Exogenous state and the Env Process of it is (prev. state + duration of step)\n", - "# Sim config contains \"duration of step\"\n", - "\n", - "# Env Proc\n", - "\n", - "# only need states to run the enigine (exclude everything else in config gen. func.)\n", - "# validation of config: mechs, behaviors, & eps (optional) can be null / 0\n", - "\n", - "# simlulation category mapping\n", - "\n", - "# RNG Seed Config:\n", - "# * 1 seed per exo_proc (Manditory)\n", - "# * 1 seed per behavior_mech (optional)\n", - "# init RNG obj with seed during config, then use RNG object during each state mutation\n", - "# RNG Seed = output field\n", - "\n", - "# define UI generated switch funct for behavior <> seed reporting\n", - "\n", - "# remove objs from mem **\n", - "# *** large numbers" - ] - }, - { - "cell_type": "code", - "execution_count": 16, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -140,7 +100,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -154,7 +114,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -177,7 +137,7 @@ "\n", "# UI Internal States per Mechanism\n", "def s1m1(step, sL, s, _input):\n", - " print(s['s1'])\n", + "# print(s['s1'])\n", " s['s1'] = s['s1']**2 + _input\n", "def s2m1(step, sL, s, _input):\n", " s['s2'] = s['s2'] + 1 + _input\n", @@ -193,7 +153,6 @@ " s['s2'] = s['s2'] + _input\n", "\n", "# UI Exogenous States //per Mechanism \n", - "# ??? Refactor: The difference between mech and step need to be re ???\n", "\n", "proc_one_coef_A = 0.7\n", "proc_one_coef_B = 1.3\n", @@ -272,7 +231,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -323,10 +282,9 @@ " del last_in_obj, last_mut_obj, in_copy, mutatable_copy,\n", " return out_copy\n", "\n", - "# isolate ALL step logic within 'step_func'\n", "def block_gen(states_list, configs, env_processes, t_step):\n", " m_step = 0\n", - " states_list_copy = deepcopy(states_list) #[-1]\n", + " states_list_copy = deepcopy(states_list)\n", " genesis_states = states_list_copy[-1]\n", " genesis_states['mech_step'], genesis_states['time_step'] = m_step, t_step\n", " states_list = [genesis_states]\n", @@ -353,21 +311,12 @@ " head, *tail = simulation_list\n", " head[-1]['mech_step'], head[-1]['time_step'] = 0, 0\n", " simulation_list = head, *tail\n", - " return simulation_list\n", - "\n", - "# Simulation layer\n", - "# pipeline(states_list, configs, env_processes, range(1))\n", - "\n", - "# Parameter sweep layer (single config param? For now ;) )\n", - " \n", - "# n = T (time) <> Pipeline run \n", - "# multiple runs of Pipeline per Montercarlo Simulation\n", - "# Montercarlo Simulation creates a new dataset initialized by the same genesis states" + " return simulation_list" ] }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -382,7 +331,7 @@ " 'time_step': 8}" ] }, - "execution_count": 21, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -408,45 +357,11 @@ }, { "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Decimal('Infinity')" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "Decimal(1.180039338585514253573643575E+354663)" - ] - }, - { - "cell_type": "code", - "execution_count": 24, + "execution_count": 19, "metadata": { - "scrolled": false + "collapsed": true }, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "2\n", - "28.93333333333333333333333333\n", - "20478.13710603775397375912083\n", - "2099481908.456319610782972145\n", - "20278528742469494677.57634624\n", - "1.877325257150165424550244514E+39\n", - "1.607776799724788040183428838E+79\n", - "1.179145751689312862767420288E+159\n" - ] - }, { "data": { "text/plain": [ @@ -459,175 +374,406 @@ " 'time_step': 0}],\n", " [{'s1': Decimal('14'),\n", " 's2': Decimal('15'),\n", - " 's3': Decimal('1.050839624268343097668321207'),\n", - " 's4': Decimal('2.441733141317365962663643586'),\n", + " 's3': Decimal('1.150'),\n", + " 's4': Decimal('3.045'),\n", " 'timestamp': '2018-10-01 15:16:25',\n", " 'mech_step': 1,\n", " 'time_step': 1},\n", - " {'s1': Decimal('28.93333333333333333333333333'),\n", + " {'s1': Decimal('28.93'),\n", " 's2': Decimal('15'),\n", - " 's3': Decimal('2.095161551176761634794792378'),\n", - " 's4': Decimal('5.113659156229101397052573169'),\n", + " 's3': Decimal('2.336'),\n", + " 's4': Decimal('6.033'),\n", " 'timestamp': '2018-10-01 15:16:25',\n", " 'mech_step': 2,\n", " 'time_step': 1},\n", - " {'s1': Decimal('28.93333333333333333333333333'),\n", - " 's2': Decimal('323.9333333333333333333333333'),\n", - " 's3': Decimal('2.519890991569726736568136605'),\n", - " 's4': Decimal('6.560321793796678631321742758'),\n", + " {'s1': Decimal('28.93'),\n", + " 's2': Decimal('544.9'),\n", + " 's3': Decimal('2.973'),\n", + " 's4': Decimal('9.469'),\n", " 'timestamp': '2018-10-01 15:16:25',\n", " 'mech_step': 3,\n", " 'time_step': 1}],\n", - " [{'s1': Decimal('10238.54222222222222222222222'),\n", - " 's2': Decimal('9726.337777777777777777777775'),\n", - " 's3': Decimal('2.414227808970399960946867000'),\n", - " 's4': Decimal('7.247940290566966932609850879'),\n", + " [{'s1': Decimal('1.661E+4'),\n", + " 's2': Decimal('1.632E+4'),\n", + " 's3': Decimal('3.170'),\n", + " 's4': Decimal('10.19'),\n", " 'timestamp': '2018-10-01 15:16:26',\n", " 'mech_step': 1,\n", " 'time_step': 2},\n", - " {'s1': Decimal('20478.13710603775397375912083'),\n", - " 's2': Decimal('9726.337777777777777777777775'),\n", - " 's3': Decimal('2.382280598316759442817818771'),\n", - " 's4': Decimal('8.214625498425979768450058718'),\n", + " {'s1': Decimal('3.322E+4'),\n", + " 's2': Decimal('1.632E+4'),\n", + " 's3': Decimal('3.402'),\n", + " 's4': Decimal('11.58'),\n", " 'timestamp': '2018-10-01 15:16:26',\n", " 'mech_step': 2,\n", " 'time_step': 2},\n", - " {'s1': Decimal('20478.13710603775397375912083'),\n", - " 's2': Decimal('30782.40821714886508487023194'),\n", - " 's3': Decimal('2.372853856887477324389517831'),\n", - " 's4': Decimal('8.052456732708285471678171806'),\n", + " {'s1': Decimal('3.322E+4'),\n", + " 's2': Decimal('5.012E+4'),\n", + " 's3': Decimal('3.040'),\n", + " 's4': Decimal('12.90'),\n", " 'timestamp': '2018-10-01 15:16:26',\n", " 'mech_step': 3,\n", " 'time_step': 2}],\n", - " [{'s1': Decimal('1049740953.395583992944188109'),\n", - " 's2': Decimal('630417637.4701208244714003488'),\n", - " 's3': Decimal('2.450209707314563093303496856'),\n", - " 's4': Decimal('9.481481965839488087100214227'),\n", + " [{'s1': Decimal('2.767E+9'),\n", + " 's2': Decimal('1.664E+9'),\n", + " 's3': Decimal('3.007'),\n", + " 's4': Decimal('12.75'),\n", " 'timestamp': '2018-10-01 15:16:27',\n", " 'mech_step': 1,\n", " 'time_step': 3},\n", - " {'s1': Decimal('2099481908.456319610782972145'),\n", - " 's2': Decimal('630417637.4701208244714003488'),\n", - " 's3': Decimal('1.950287773309288650377474974'),\n", - " 's4': Decimal('8.841740293751859296135111327'),\n", + " {'s1': Decimal('5.534E+9'),\n", + " 's2': Decimal('1.664E+9'),\n", + " 's3': Decimal('2.450'),\n", + " 's4': Decimal('13.24'),\n", " 'timestamp': '2018-10-01 15:16:27',\n", " 'mech_step': 2,\n", " 'time_step': 3},\n", - " {'s1': Decimal('2099481908.456319610782972145'),\n", - " 's2': Decimal('2729930685.334657584119457364'),\n", - " 's3': Decimal('1.959308931432416130120888268'),\n", - " 's4': Decimal('8.974911814493511615884310915'),\n", + " {'s1': Decimal('5.534E+9'),\n", + " 's2': Decimal('7.198E+9'),\n", + " 's3': Decimal('2.530'),\n", + " 's4': Decimal('12.72'),\n", " 'timestamp': '2018-10-01 15:16:27',\n", " 'mech_step': 3,\n", " 'time_step': 3}],\n", - " [{'s1': Decimal('10139264371234747337.90364286'),\n", - " 's2': Decimal('5731440090029288025.821169394'),\n", - " 's3': Decimal('1.826531350305170994714191335'),\n", - " 's4': Decimal('9.112179233963412364421569386'),\n", + " [{'s1': Decimal('7.045E+19'),\n", + " 's2': Decimal('3.983E+19'),\n", + " 's3': Decimal('2.450'),\n", + " 's4': Decimal('11.97'),\n", " 'timestamp': '2018-10-01 15:16:28',\n", " 'mech_step': 1,\n", " 'time_step': 4},\n", - " {'s1': Decimal('20278528742469494677.57634624'),\n", - " 's2': Decimal('5731440090029288025.821169394'),\n", - " 's3': Decimal('1.563613299386086065297790265'),\n", - " 's4': Decimal('8.142465426358771934611814063'),\n", + " {'s1': Decimal('1.409E+20'),\n", + " 's2': Decimal('3.983E+19'),\n", + " 's3': Decimal('2.119'),\n", + " 's4': Decimal('14.25'),\n", " 'timestamp': '2018-10-01 15:16:28',\n", " 'mech_step': 2,\n", " 'time_step': 4},\n", - " {'s1': Decimal('20278528742469494677.57634624'),\n", - " 's2': Decimal('26009968835228714302.73217321'),\n", - " 's3': Decimal('1.645592986464568891773823198'),\n", - " 's4': Decimal('8.499061940452677383673350698'),\n", + " {'s1': Decimal('1.409E+20'),\n", + " 's2': Decimal('1.807E+20'),\n", + " 's3': Decimal('1.971'),\n", + " 's4': Decimal('13.59'),\n", " 'timestamp': '2018-10-01 15:16:28',\n", " 'mech_step': 3,\n", " 'time_step': 4}],\n", - " [{'s1': Decimal('9.386626285750827122751222570E+38'),\n", - " 's2': Decimal('5.274439006159212871100158803E+38'),\n", - " 's3': Decimal('1.766590077810922682661611754'),\n", - " 's4': Decimal('10.14701174406741548094852163'),\n", + " [{'s1': Decimal('4.531E+40'),\n", + " 's2': Decimal('2.546E+40'),\n", + " 's3': Decimal('2.018'),\n", + " 's4': Decimal('16.29'),\n", " 'timestamp': '2018-10-01 15:16:29',\n", " 'mech_step': 1,\n", " 'time_step': 5},\n", - " {'s1': Decimal('1.877325257150165424550244514E+39'),\n", - " 's2': Decimal('5.274439006159212871100158803E+38'),\n", - " 's3': Decimal('1.651187533670048789111573805'),\n", - " 's4': Decimal('9.107013181916861331280610696'),\n", + " {'s1': Decimal('9.062E+40'),\n", + " 's2': Decimal('2.546E+40'),\n", + " 's3': Decimal('1.906'),\n", + " 's4': Decimal('15.72'),\n", " 'timestamp': '2018-10-01 15:16:29',\n", " 'mech_step': 2,\n", " 'time_step': 5},\n", - " {'s1': Decimal('1.877325257150165424550244514E+39'),\n", - " 's2': Decimal('2.404769157766086711686270363E+39'),\n", - " 's3': Decimal('1.790292864649310878443840252'),\n", - " 's4': Decimal('9.926041890044552780550681046'),\n", + " {'s1': Decimal('9.062E+40'),\n", + " 's2': Decimal('1.160E+41'),\n", + " 's3': Decimal('1.963'),\n", + " 's4': Decimal('16.11'),\n", " 'timestamp': '2018-10-01 15:16:29',\n", " 'mech_step': 3,\n", " 'time_step': 5}],\n", - " [{'s1': Decimal('8.038883998623940200917144191E+78'),\n", - " 's2': Decimal('4.514533877490005463421990753E+78'),\n", - " 's3': Decimal('1.721990241144296597165634041'),\n", - " 's4': Decimal('9.772677741619428942163366001'),\n", + " [{'s1': Decimal('1.872E+82'),\n", + " 's2': Decimal('1.051E+82'),\n", + " 's3': Decimal('2.071'),\n", + " 's4': Decimal('17.86'),\n", " 'timestamp': '2018-10-01 15:16:30',\n", " 'mech_step': 1,\n", " 'time_step': 6},\n", - " {'s1': Decimal('1.607776799724788040183428838E+79'),\n", - " 's2': Decimal('4.514533877490005463421990753E+78'),\n", - " 's3': Decimal('1.733439583633598073067015745'),\n", - " 's4': Decimal('11.50207747740550731873114995'),\n", + " {'s1': Decimal('3.744E+82'),\n", + " 's2': Decimal('1.051E+82'),\n", + " 's3': Decimal('1.896'),\n", + " 's4': Decimal('17.90'),\n", " 'timestamp': '2018-10-01 15:16:30',\n", " 'mech_step': 2,\n", " 'time_step': 6},\n", - " {'s1': Decimal('1.607776799724788040183428838E+79'),\n", - " 's2': Decimal('2.059230187473788586525627913E+79'),\n", - " 's3': Decimal('1.542979825353311903430476680'),\n", - " 's4': Decimal('12.05853458308223690328902863'),\n", + " {'s1': Decimal('3.744E+82'),\n", + " 's2': Decimal('4.795E+82'),\n", + " 's3': Decimal('1.836'),\n", + " 's4': Decimal('18.60'),\n", " 'timestamp': '2018-10-01 15:16:30',\n", " 'mech_step': 3,\n", " 'time_step': 6}],\n", - " [{'s1': Decimal('5.895728758446564313837101442E+158'),\n", - " 's2': Decimal('3.310782520713283121912590559E+158'),\n", - " 's3': Decimal('1.787462981508510228113852341'),\n", - " 's4': Decimal('12.87395246742184837067844430'),\n", + " [{'s1': Decimal('3.196E+165'),\n", + " 's2': Decimal('1.795E+165'),\n", + " 's3': Decimal('2.229'),\n", + " 's4': Decimal('18.15'),\n", " 'timestamp': '2018-10-01 15:16:31',\n", " 'mech_step': 1,\n", " 'time_step': 7},\n", - " {'s1': Decimal('1.179145751689312862767420288E+159'),\n", - " 's2': Decimal('3.310782520713283121912590559E+158'),\n", - " 's3': Decimal('1.312096236060668399279110012'),\n", - " 's4': Decimal('13.70195781773988542185573409'),\n", + " {'s1': Decimal('6.392E+165'),\n", + " 's2': Decimal('1.795E+165'),\n", + " 's3': Decimal('2.255'),\n", + " 's4': Decimal('17.28'),\n", " 'timestamp': '2018-10-01 15:16:31',\n", " 'mech_step': 2,\n", " 'time_step': 7},\n", - " {'s1': Decimal('1.179145751689312862767420288E+159'),\n", - " 's2': Decimal('1.510224003760641174958679344E+159'),\n", - " 's3': Decimal('1.300096771833397499282040225'),\n", - " 's4': Decimal('14.04325537259159774263686231'),\n", + " {'s1': Decimal('6.392E+165'),\n", + " 's2': Decimal('8.187E+165'),\n", + " 's3': Decimal('2.064'),\n", + " 's4': Decimal('16.99'),\n", " 'timestamp': '2018-10-01 15:16:31',\n", " 'mech_step': 3,\n", " 'time_step': 7}],\n", - " [{'s1': Decimal('3.171158921860539561899348910E+318'),\n", - " 's2': Decimal('1.780774218133584893940497220E+318'),\n", - " 's3': Decimal('1.390469047289367567385951761'),\n", - " 's4': Decimal('12.08314904185900429022556786'),\n", + " [{'s1': Decimal('9.318E+331'),\n", + " 's2': Decimal('5.233E+331'),\n", + " 's3': Decimal('2.076'),\n", + " 's4': Decimal('15.88'),\n", " 'timestamp': '2018-10-01 15:16:32',\n", " 'mech_step': 1,\n", " 'time_step': 8},\n", - " {'s1': Decimal('6.342317843721079123798697820E+318'),\n", - " 's2': Decimal('1.780774218133584893940497220E+318'),\n", - " 's3': Decimal('1.107721818181176344138493920'),\n", - " 's4': Decimal('13.76471607488974402351461499'),\n", + " {'s1': Decimal('1.863E+332'),\n", + " 's2': Decimal('5.233E+331'),\n", + " 's3': Decimal('1.798'),\n", + " 's4': Decimal('18.47'),\n", " 'timestamp': '2018-10-01 15:16:32',\n", " 'mech_step': 2,\n", " 'time_step': 8},\n", - " {'s1': Decimal('6.342317843721079123798697820E+318'),\n", - " 's2': Decimal('8.123092061854664017739195040E+318'),\n", - " 's3': Decimal('1.086733894341511439510583758'),\n", - " 's4': Decimal('11.87802909584694378791861784'),\n", + " {'s1': Decimal('1.863E+332'),\n", + " 's2': Decimal('2.386E+332'),\n", + " 's3': Decimal('2.001'),\n", + " 's4': Decimal('18.16'),\n", " 'timestamp': '2018-10-01 15:16:32',\n", " 'mech_step': 3,\n", - " 'time_step': 8}])" + " 'time_step': 8}],\n", + " [{'s1': Decimal('7.915E+664'),\n", + " 's2': Decimal('4.445E+664'),\n", + " 's3': Decimal('2.075'),\n", + " 's4': Decimal('21.28'),\n", + " 'timestamp': '2018-10-01 15:16:33',\n", + " 'mech_step': 1,\n", + " 'time_step': 9},\n", + " {'s1': Decimal('1.583E+665'),\n", + " 's2': Decimal('4.445E+664'),\n", + " 's3': Decimal('2.300'),\n", + " 's4': Decimal('15.56'),\n", + " 'timestamp': '2018-10-01 15:16:33',\n", + " 'mech_step': 2,\n", + " 'time_step': 9},\n", + " {'s1': Decimal('1.583E+665'),\n", + " 's2': Decimal('2.027E+665'),\n", + " 's3': Decimal('2.507'),\n", + " 's4': Decimal('15.58'),\n", + " 'timestamp': '2018-10-01 15:16:33',\n", + " 'mech_step': 3,\n", + " 'time_step': 9}],\n", + " [{'s1': Decimal('5.713E+1330'),\n", + " 's2': Decimal('3.208E+1330'),\n", + " 's3': Decimal('2.604'),\n", + " 's4': Decimal('16.45'),\n", + " 'timestamp': '2018-10-01 15:16:34',\n", + " 'mech_step': 1,\n", + " 'time_step': 10},\n", + " {'s1': Decimal('1.142E+1331'),\n", + " 's2': Decimal('3.208E+1330'),\n", + " 's3': Decimal('2.858'),\n", + " 's4': Decimal('15.96'),\n", + " 'timestamp': '2018-10-01 15:16:34',\n", + " 'mech_step': 2,\n", + " 'time_step': 10},\n", + " {'s1': Decimal('1.142E+1331'),\n", + " 's2': Decimal('1.462E+1331'),\n", + " 's3': Decimal('2.912'),\n", + " 's4': Decimal('17.70'),\n", + " 'timestamp': '2018-10-01 15:16:34',\n", + " 'mech_step': 3,\n", + " 'time_step': 10}],\n", + " [{'s1': Decimal('2.973E+2662'),\n", + " 's2': Decimal('1.669E+2662'),\n", + " 's3': Decimal('2.719'),\n", + " 's4': Decimal('18.83'),\n", + " 'timestamp': '2018-10-01 15:16:35',\n", + " 'mech_step': 1,\n", + " 'time_step': 11},\n", + " {'s1': Decimal('5.946E+2662'),\n", + " 's2': Decimal('1.669E+2662'),\n", + " 's3': Decimal('2.440'),\n", + " 's4': Decimal('18.31'),\n", + " 'timestamp': '2018-10-01 15:16:35',\n", + " 'mech_step': 2,\n", + " 'time_step': 11},\n", + " {'s1': Decimal('5.946E+2662'),\n", + " 's2': Decimal('7.615E+2662'),\n", + " 's3': Decimal('2.330'),\n", + " 's4': Decimal('19.10'),\n", + " 'timestamp': '2018-10-01 15:16:35',\n", + " 'mech_step': 3,\n", + " 'time_step': 11}],\n", + " [{'s1': Decimal('8.062E+5325'),\n", + " 's2': Decimal('4.527E+5325'),\n", + " 's3': Decimal('1.746'),\n", + " 's4': Decimal('24.47'),\n", + " 'timestamp': '2018-10-01 15:16:36',\n", + " 'mech_step': 1,\n", + " 'time_step': 12},\n", + " {'s1': Decimal('1.612E+5326'),\n", + " 's2': Decimal('4.527E+5325'),\n", + " 's3': Decimal('2.064'),\n", + " 's4': Decimal('25.08'),\n", + " 'timestamp': '2018-10-01 15:16:36',\n", + " 'mech_step': 2,\n", + " 'time_step': 12},\n", + " {'s1': Decimal('1.612E+5326'),\n", + " 's2': Decimal('2.064E+5326'),\n", + " 's3': Decimal('1.710'),\n", + " 's4': Decimal('25.83'),\n", + " 'timestamp': '2018-10-01 15:16:36',\n", + " 'mech_step': 3,\n", + " 'time_step': 12}],\n", + " [{'s1': Decimal('5.925E+10652'),\n", + " 's2': Decimal('3.327E+10652'),\n", + " 's3': Decimal('1.696'),\n", + " 's4': Decimal('24.69'),\n", + " 'timestamp': '2018-10-01 15:16:37',\n", + " 'mech_step': 1,\n", + " 'time_step': 13},\n", + " {'s1': Decimal('1.185E+10653'),\n", + " 's2': Decimal('3.327E+10652'),\n", + " 's3': Decimal('1.472'),\n", + " 's4': Decimal('25.01'),\n", + " 'timestamp': '2018-10-01 15:16:37',\n", + " 'mech_step': 2,\n", + " 'time_step': 13},\n", + " {'s1': Decimal('1.185E+10653'),\n", + " 's2': Decimal('1.517E+10653'),\n", + " 's3': Decimal('1.173'),\n", + " 's4': Decimal('21.78'),\n", + " 'timestamp': '2018-10-01 15:16:37',\n", + " 'mech_step': 3,\n", + " 'time_step': 13}],\n", + " [{'s1': Decimal('3.201E+21306'),\n", + " 's2': Decimal('1.797E+21306'),\n", + " 's3': Decimal('1.163'),\n", + " 's4': Decimal('21.34'),\n", + " 'timestamp': '2018-10-01 15:16:38',\n", + " 'mech_step': 1,\n", + " 'time_step': 14},\n", + " {'s1': Decimal('6.402E+21306'),\n", + " 's2': Decimal('1.797E+21306'),\n", + " 's3': Decimal('1.127'),\n", + " 's4': Decimal('26.58'),\n", + " 'timestamp': '2018-10-01 15:16:38',\n", + " 'mech_step': 2,\n", + " 'time_step': 14},\n", + " {'s1': Decimal('6.402E+21306'),\n", + " 's2': Decimal('8.199E+21306'),\n", + " 's3': Decimal('1.108'),\n", + " 's4': Decimal('29.41'),\n", + " 'timestamp': '2018-10-01 15:16:38',\n", + " 'mech_step': 3,\n", + " 'time_step': 14}],\n", + " [{'s1': Decimal('9.346E+42613'),\n", + " 's2': Decimal('5.248E+42613'),\n", + " 's3': Decimal('1.168'),\n", + " 's4': Decimal('31.29'),\n", + " 'timestamp': '2018-10-01 15:16:39',\n", + " 'mech_step': 1,\n", + " 'time_step': 15},\n", + " {'s1': Decimal('1.869E+42614'),\n", + " 's2': Decimal('5.248E+42613'),\n", + " 's3': Decimal('1.095'),\n", + " 's4': Decimal('34.74'),\n", + " 'timestamp': '2018-10-01 15:16:39',\n", + " 'mech_step': 2,\n", + " 'time_step': 15},\n", + " {'s1': Decimal('1.869E+42614'),\n", + " 's2': Decimal('2.393E+42614'),\n", + " 's3': Decimal('1.136'),\n", + " 's4': Decimal('41.27'),\n", + " 'timestamp': '2018-10-01 15:16:39',\n", + " 'mech_step': 3,\n", + " 'time_step': 15}],\n", + " [{'s1': Decimal('7.965E+85228'),\n", + " 's2': Decimal('4.472E+85228'),\n", + " 's3': Decimal('1.194'),\n", + " 's4': Decimal('43.71'),\n", + " 'timestamp': '2018-10-01 15:16:40',\n", + " 'mech_step': 1,\n", + " 'time_step': 16},\n", + " {'s1': Decimal('1.593E+85229'),\n", + " 's2': Decimal('4.472E+85228'),\n", + " 's3': Decimal('1.154'),\n", + " 's4': Decimal('52.76'),\n", + " 'timestamp': '2018-10-01 15:16:40',\n", + " 'mech_step': 2,\n", + " 'time_step': 16},\n", + " {'s1': Decimal('1.593E+85229'),\n", + " 's2': Decimal('2.040E+85229'),\n", + " 's3': Decimal('1.121'),\n", + " 's4': Decimal('58.40'),\n", + " 'timestamp': '2018-10-01 15:16:40',\n", + " 'mech_step': 3,\n", + " 'time_step': 16}],\n", + " [{'s1': Decimal('5.786E+170458'),\n", + " 's2': Decimal('3.249E+170458'),\n", + " 's3': Decimal('1.181'),\n", + " 's4': Decimal('59.37'),\n", + " 'timestamp': '2018-10-01 15:16:41',\n", + " 'mech_step': 1,\n", + " 'time_step': 17},\n", + " {'s1': Decimal('1.157E+170459'),\n", + " 's2': Decimal('3.249E+170458'),\n", + " 's3': Decimal('1.187'),\n", + " 's4': Decimal('69.57'),\n", + " 'timestamp': '2018-10-01 15:16:41',\n", + " 'mech_step': 2,\n", + " 'time_step': 17},\n", + " {'s1': Decimal('1.157E+170459'),\n", + " 's2': Decimal('1.481E+170459'),\n", + " 's3': Decimal('1.205'),\n", + " 's4': Decimal('53.15'),\n", + " 'timestamp': '2018-10-01 15:16:41',\n", + " 'mech_step': 3,\n", + " 'time_step': 17}],\n", + " [{'s1': Decimal('3.051E+340918'),\n", + " 's2': Decimal('1.713E+340918'),\n", + " 's3': Decimal('0.9188'),\n", + " 's4': Decimal('50.11'),\n", + " 'timestamp': '2018-10-01 15:16:42',\n", + " 'mech_step': 1,\n", + " 'time_step': 18},\n", + " {'s1': Decimal('6.102E+340918'),\n", + " 's2': Decimal('1.713E+340918'),\n", + " 's3': Decimal('0.9241'),\n", + " 's4': Decimal('51.44'),\n", + " 'timestamp': '2018-10-01 15:16:42',\n", + " 'mech_step': 2,\n", + " 'time_step': 18},\n", + " {'s1': Decimal('6.102E+340918'),\n", + " 's2': Decimal('7.815E+340918'),\n", + " 's3': Decimal('0.9588'),\n", + " 's4': Decimal('46.74'),\n", + " 'timestamp': '2018-10-01 15:16:42',\n", + " 'mech_step': 3,\n", + " 'time_step': 18}],\n", + " [{'s1': Decimal('8.491E+681837'),\n", + " 's2': Decimal('4.768E+681837'),\n", + " 's3': Decimal('0.9458'),\n", + " 's4': Decimal('46.01'),\n", + " 'timestamp': '2018-10-01 15:16:43',\n", + " 'mech_step': 1,\n", + " 'time_step': 19},\n", + " {'s1': Decimal('1.698E+681838'),\n", + " 's2': Decimal('4.768E+681837'),\n", + " 's3': Decimal('0.9775'),\n", + " 's4': Decimal('43.07'),\n", + " 'timestamp': '2018-10-01 15:16:43',\n", + " 'mech_step': 2,\n", + " 'time_step': 19},\n", + " {'s1': Decimal('1.698E+681838'),\n", + " 's2': Decimal('2.174E+681838'),\n", + " 's3': Decimal('1.163'),\n", + " 's4': Decimal('40.25'),\n", + " 'timestamp': '2018-10-01 15:16:43',\n", + " 'mech_step': 3,\n", + " 'time_step': 19}])" ] }, - "execution_count": 24, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } @@ -635,23 +781,27 @@ "source": [ "configs = generate_config(mechanisms, exogenous_states)\n", "\n", - "pipeline(states_list, configs, env_processes, range(8))\n", + "pipeline(states_list, configs, env_processes, range(19))\n", "# a = block_gen(states_list, configs, env_processes, 1)\n", - "# b = block_gen(a, configs, env_processes, 2)\n", - "# b\n", - "# categorize by simulation\n", - "\n", - "# Pipeline : exec of mech steps\n", - "# T (Time Step) per Pipeline runs\n", - "\n", - "# Simulatiom: N Pipline runs per Simulation at different T progressively" + "# b = block_gen(a, configs, env_processes, 2)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "999999999999999995000000000000000009999999999999999990000000000000000004999999999999999999" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "from decimal import Decimal, MAX_EMAX\n", "# Decimal(2.5347751615574597e+167)**2\n", @@ -660,22 +810,42 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "1000000" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "1000 * 1000" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2018-10-02 12:37:06.309267\n", + "2018-10-02 12:38:06.309267\n" + ] + } + ], "source": [ "from datetime import datetime, timedelta\n", "# from datetime import timedelta \n", @@ -688,9 +858,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "datetime.datetime(2018, 10, 2, 12, 37, 6)" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "s = datetime.now().strftime('%Y-%m-%d %H:%M:%S')\n", "datetime_object = datetime.strptime(s, '%Y-%m-%d %H:%M:%S')\n", @@ -699,9 +880,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "TypeError", + "evalue": "Required argument 'timestamp' (pos 1) not found", + "output_type": "error", + "traceback": [ + "\u001b[0;31m--------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdatetime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfromtimestamp\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;31mTypeError\u001b[0m: Required argument 'timestamp' (pos 1) not found" + ] + } + ], "source": [ "datetime.fromtimestamp()" ]