{ "file_format_version": 1, "format_version": 1, "id": "3b6780c7-488b-471e-a784-392db7632090", "name": "main_node", "root": { "50e6ef97-f686-4400-bc01-e5a352e8cc22": { "name": "some_bondgraph", "interface": { "ports": {} }, "parameters": {}, "implementation": { "implementation_type": "graph", "graph": { "components": { "43b3aee6-0b38-429b-9c6d-d38fc097297f": { "name": "C", "interface": { "ports": { "c87881f1-23b4-4a69-b586-8e3c7bf6e21e": { "port_type": "bond", "name": "p", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "", "domain": "power", "causality_preference": "preferred_effort_out" }, "c62de8eb-e13b-4849-bea5-c8cc5332269e": { "port_type": "signal", "name": "state", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "", "value_type": "real", "quantity": "", "unit": "" } } }, "parameters": { "parameter-d056bc27": { "name": "c", "value": "1", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [ "state = 0;" ], "equations": [ "der(state) = p.f;", "p.e = state/c;" ] } }, "5a8b2e8d-489f-467b-8282-7e344dfad576": { "name": "R", "interface": { "ports": { "0ac7d4ea-77f7-4c0d-8e37-406ef66e4740": { "port_type": "bond", "name": "p", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "", "domain": "power", "causality_preference": "indifferent" }, "d1f5aab2-7bff-4b1e-8697-98fb6c3d8f02": { "port_type": "signal", "name": "power", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "Dissipated power", "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "parameter-d056bc27": { "name": "r", "value": "1", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "p.e = r*p.f;", "power = p.e*p.f;" ] } }, "2804f2f1-6123-4a53-aff1-87a3a8202711": { "name": "Se", "interface": { "ports": { "5b6a8a0c-0875-402c-bd74-11d086aac372": { "port_type": "bond", "name": "p", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "", "domain": "power", "causality_preference": "fixed_effort_out" }, "239bd18c-ff3d-4713-a5a4-0207973afb36": { "port_type": "signal", "name": "u", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "parameter-d056bc27": { "name": "e", "value": "1", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [ "Real f;" ], "initial_equations": [], "equations": [ "p.e = u*e;", "f = p.f;" ] } }, "77701f68-b14c-4b98-8929-c5fba0261962": { "name": "R0", "interface": { "ports": { "4a3f69f2-b305-4305-92e3-3998634ff226": { "port_type": "bond", "name": "p", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "", "domain": "power", "causality_preference": "indifferent" } } }, "parameters": { "parameter-d056bc27": { "name": "r", "value": "10", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "p.e = r*p.f;" ] } }, "033b930e-bf79-403a-8b0b-a159f3c81ce9": { "name": "I", "interface": { "ports": { "0b9036b1-e4e4-437e-8c35-f5bb391b6cbd": { "port_type": "bond", "name": "p", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "", "domain": "power", "causality_preference": "preferred_flow_out" }, "fb25f35d-4c0c-4cfa-92d4-1a18a71e2c11": { "port_type": "signal", "name": "state", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": "", "value_type": "real", "quantity": "", "unit": "" } } }, "parameters": { "parameter-d056bc27": { "name": "i", "value": "1", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [ "state = 0;" ], "equations": [ "der(state) = p.e;", "p.f = state/i;" ] } }, "7e0f1689-4173-42c2-b0c3-4c01cd699fcc": { "name": "step", "interface": { "ports": { "37eb6e52-6e89-4e09-8923-43c6230f5486": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "f609057b-7cd8-4a5d-9243-771c64426c29": { "name": "v", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null }, "86a87f91-fdc4-4662-9e8b-1855a1f4f577": { "name": "T", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null }, "901df6e3-671d-467b-91bb-a26654fbf6bb": { "name": "offset", "value": "0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "y = if time >= T then v+offset else offset;" ] } }, "aa0ff170-82d0-4f5e-9151-3b8478531e97": { "name": "const", "interface": { "ports": { "b39afdc2-a419-459a-bdf2-5358bf38103d": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "dab851b3-cc1b-42af-878c-5229209fd74d": { "name": "v", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "y = v;" ] } }, "2b3844e8-1875-40d0-ae4e-7a14ca217bce": { "name": "ramp", "interface": { "ports": { "5807dc83-d049-4f0f-9708-d041a752fcd0": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "dc093514-3e2f-4424-9e4f-01a6437c4ca5": { "name": "d", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null }, "3e4487c8-a3b1-4a51-8aac-3cd66ce7a0b0": { "name": "offset", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "y = offset + time*d;" ] } }, "c07a8cfb-323b-432b-8a6f-23b1a60eb593": { "name": "gain", "interface": { "ports": { "d5681d1d-70ee-4623-a41a-5a572e46d42c": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null }, "8bd1cc42-03b9-4c46-b31b-c1f46933dc9e": { "port_type": "signal", "name": "u", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "a4a9e500-5297-45b2-ba5d-7854f2855ec5": { "name": "k", "value": "2.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "y = k*u;" ] } }, "6596fb5f-0b16-4f9b-804b-5b8b81db4158": { "name": "j1", "interface": { "ports": { "44bfb5f7-d8bf-4922-bac8-a001c077893e": { "port_type": "bond", "name": "p", "direction": "input", "multiplicity": true, "matrix_size": [ 1, 1 ], "description": "", "domain": "power", "causality_preference": "single_flow_in" }, "30d830d5-adc9-4b84-960f-a7b51f68adf4": { "port_type": "signal", "name": "f", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": {}, "implementation": { "implementation_type": "equation", "declarations": [ "parameter Real s[$p_N$] = $p_S$;" ], "initial_equations": [], "equations": [ "f = s[1] * p[1].f;", "sum(s[i] * p[i].e for i in 1:$p_N$) = 0;", "for i in 2:$p_N$ loop", " s[i] * p[i].f = s[i-1] * p[i-1].f;", "end for;" ] } }, "8e8dca73-2d11-4631-9c24-5e1a4e3b2920": { "name": "j0", "interface": { "ports": { "707394db-dff5-4591-b716-23f32b56d4a6": { "port_type": "bond", "name": "p", "direction": "input", "multiplicity": true, "matrix_size": [ 1, 1 ], "description": "", "domain": "power", "causality_preference": "single_effort_in" }, "a2709c23-7485-43b2-bc87-28a0f4c37c0b": { "port_type": "signal", "name": "e", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": {}, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "e = p[1].e;", "sum(p[i].f for i in 1:$p_N$) = 0;", "for i in 2:$p_N$ loop", " p[i].e = p[i-1].e;", "end for;" ] } }, "404e82f4-19e2-44ad-b409-3f021e483a39": { "name": "integrator", "interface": { "ports": { "441a44d0-bbe5-49f0-bb0e-5bc891218aca": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null }, "8d4b0f2c-2e13-4cfd-a8da-6c03ade4fbbf": { "port_type": "signal", "name": "u", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "7150c82e-8c78-4f83-9bc8-e46057a367a8": { "name": "k", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Integrator gain" }, "f7b9691a-22a4-41e0-9871-44f8dd0e02d2": { "name": "initType", "value": "3", "value_type": "int", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Type of initialization (1: no init, 2: steady state, 3: initial state, 4: initial output)" }, "3b636a9c-257c-4368-855a-094051f29041": { "name": "y_start", "value": "0.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Initial or guess value of output (= state)" } }, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [ "if initType == 2 then", "\tder(y) = 0;", "elseif initType >= 3 then", "\ty = y_start;", "end if;" ], "equations": [ "der(y) = k*u;" ] } }, "2b0156f6-9977-4735-88dd-14f5eb3d87b5": { "name": "derivative", "interface": { "ports": { "d61847c9-0628-4e86-ad91-9390f92f926d": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null }, "f18c8fd2-dda5-4e8d-a5a7-a22a38abb091": { "port_type": "signal", "name": "u", "direction": "input", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "ec421126-1ff4-4627-8bdd-1841318f3eb6": { "name": "k", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Integrator gain" }, "0c364769-5f07-4f3e-bb93-91d86a1f2dae": { "name": "initType", "value": "3", "value_type": "int", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Type of initialization (1: no init, 2: steady state, 3: initial state, 4: initial output)" }, "ab3a2bae-ea7f-41ca-9493-93d8debcee27": { "name": "y_start", "value": "0.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Initial or guess value of output (= state)" }, "e04d9fc5-761c-4b3d-bd7b-93da9896bd35": { "name": "T", "value": "0.01", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Time constants (T>0 required; T=0 is ideal derivative block)" }, "29669830-2738-4692-8255-115d1546619c": { "name": "x_start", "value": "0.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Initial or guess value of state\"" } }, "implementation": { "implementation_type": "equation", "declarations": [ "parameter Boolean zeroGain = abs(k) < Modelica.Constants.eps;", "Real x(start=x_start);" ], "initial_equations": [ "if initType == 2 then", "\tder(x) = 0;", "elseif initType == 3 then", "\tx = x_start;", "elseif initType >= 4 then", "\tif zeroGain then", "\t\tx = u;", "\telse", "\t\ty = y_start;", "\tend if;", "end if;" ], "equations": [ "der(x) = if zeroGain then 0 else (u-x)/T;", "y = if zeroGain then 0 else (k/T)*(u-x);" ] } }, "927326ff-f73a-4f98-b7fd-aaf97989121e": { "name": "pulse", "interface": { "ports": { "4f9f6b29-36f0-460e-9fd9-d4bdf0ea3c80": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": { "b6460a26-0b89-49e0-8ec7-99281a66668b": { "name": "amplitude", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null }, "983d6c65-8e81-4f49-9faa-d024e8e6a9d3": { "name": "width", "value": "50.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Pulse width in %" }, "c9ccd873-f83a-4b08-8827-4a88a06d502a": { "name": "offset", "value": "0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null }, "9cd46f38-6ddb-4d69-946d-df96e9f30078": { "name": "period", "value": "1.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null }, "4e1d29eb-48c8-479a-8968-8f57fd95ea9f": { "name": "nperiod", "value": "-1", "value_type": "int", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": "Number of periods (<0 means infinite)" }, "68102f0d-b58b-4c10-af0d-dffae406fb07": { "name": "startTime", "value": "0.0", "value_type": "real", "matrix_size": [ 1, 1 ], "quantity": null, "unit": null, "description": null } }, "implementation": { "implementation_type": "equation", "declarations": [ "Integer count;", "Modelica.Units.SI.Time T_start;", "Modelica.Units.SI.Time T_width=period*width/100;" ], "initial_equations": [ "initial algorithm", "count := integer((time-startTime)/period);", "T_start := startTime + count*period;" ], "equations": [ "when time >= (pre(count)+1)*period + startTime then", "\tcount = pre(count) + 1;", "\tT_start = time;", "end when;", "y = offset + (if (time < startTime or nperiod == 0 or (nperiod > 0 and count >= nperiod)) then 0 else if time < T_start + T_width then amplitude else 0);" ] } }, "ac215607-dd97-4142-b42f-f23502e51cfa": { "name": "plusminus", "interface": { "ports": { "baadcb27-0807-4366-819f-7396a1ed205d": { "port_type": "signal", "name": "plus", "direction": "input", "multiplicity": true, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null }, "53cc98de-2e05-49ea-af26-e26d5dcd99e7": { "port_type": "signal", "name": "minus", "direction": "input", "multiplicity": true, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null }, "0574652d-df52-4798-8072-da0a26eee873": { "port_type": "signal", "name": "y", "direction": "output", "multiplicity": false, "matrix_size": [ 1, 1 ], "description": null, "value_type": "real", "quantity": null, "unit": null } } }, "parameters": {}, "implementation": { "implementation_type": "equation", "declarations": [], "initial_equations": [], "equations": [ "y = sum(plus) - sum(minus);" ] } } }, "connections": { "00c239f4-b281-4313-9577-15a81f272c2b": { "connection_type": "signal", "source": "37eb6e52-6e89-4e09-8923-43c6230f5486", "target": "239bd18c-ff3d-4713-a5a4-0207973afb36" }, "a5735621-1486-4e5e-be46-a5ba406dde78": { "connection_type": "bond", "source": "5b6a8a0c-0875-402c-bd74-11d086aac372", "target": "44bfb5f7-d8bf-4922-bac8-a001c077893e", "causality": "effort_out", "undesired": false }, "5c0d8fee-a366-4544-adb9-1ac3802a56a6": { "connection_type": "bond", "source": "44bfb5f7-d8bf-4922-bac8-a001c077893e", "target": "c87881f1-23b4-4a69-b586-8e3c7bf6e21e", "causality": "flow_out", "undesired": false }, "6523c7a3-868a-474b-8e7c-5fb4ee4443a4": { "connection_type": "bond", "source": "44bfb5f7-d8bf-4922-bac8-a001c077893e", "target": "0ac7d4ea-77f7-4c0d-8e37-406ef66e4740", "causality": "flow_out", "undesired": false }, "b9391149-a6b0-4b53-b338-d9e4990557ce": { "connection_type": "bond", "source": "44bfb5f7-d8bf-4922-bac8-a001c077893e", "target": "707394db-dff5-4591-b716-23f32b56d4a6", "causality": "effort_out", "undesired": false }, "6163366c-d693-4a9f-962d-27920e510131": { "connection_type": "bond", "source": "707394db-dff5-4591-b716-23f32b56d4a6", "target": "4a3f69f2-b305-4305-92e3-3998634ff226", "causality": "effort_out", "undesired": false }, "610f5a4d-6eff-487e-9782-d08d1f257cfa": { "connection_type": "bond", "source": "707394db-dff5-4591-b716-23f32b56d4a6", "target": "0b9036b1-e4e4-437e-8c35-f5bb391b6cbd", "causality": "effort_out", "undesired": false }, "909ab167-31cf-4b10-95ed-082878018970": { "connection_type": "signal", "source": "a2709c23-7485-43b2-bc87-28a0f4c37c0b", "target": "8bd1cc42-03b9-4c46-b31b-c1f46933dc9e" }, "122eaf51-7baf-457f-a944-f946b6ab321a": { "connection_type": "signal", "source": "4f9f6b29-36f0-460e-9fd9-d4bdf0ea3c80", "target": "baadcb27-0807-4366-819f-7396a1ed205d" }, "8b1c34a9-03c2-4bb5-81ab-7fa66bcafe8e": { "connection_type": "signal", "source": "5807dc83-d049-4f0f-9708-d041a752fcd0", "target": "53cc98de-2e05-49ea-af26-e26d5dcd99e7" }, "3c659d9e-8218-48ac-9a3d-4297fba275c2": { "connection_type": "signal", "source": "0574652d-df52-4798-8072-da0a26eee873", "target": "8d4b0f2c-2e13-4cfd-a8da-6c03ade4fbbf" }, "9b5ab2d7-d302-48e8-98dc-0d60ba54ca01": { "connection_type": "signal", "source": "0574652d-df52-4798-8072-da0a26eee873", "target": "f18c8fd2-dda5-4e8d-a5a7-a22a38abb091" } } } } } }, "metadata": { "icon_database": { "format_version": 1, "icons": { "43b3aee6-0b38-429b-9c6d-d38fc097297f": { "shapes": { "2a5bf670-c821-442b-9d46-1b07faa70722": { "layer": 0, "type": "text", "pos": [ -32, -32 ], "width": 64.0, "height": 64.0, "color": "#000000ff", "bold": true, "italic": false, "size": 64.0, "text": "C" } }, "port_positions": { "c87881f1-23b4-4a69-b586-8e3c7bf6e21e": [ -8, -8 ], "c62de8eb-e13b-4849-bea5-c8cc5332269e": [ 16, -32 ] } }, "5a8b2e8d-489f-467b-8282-7e344dfad576": { "shapes": { "2a5bf670-c821-442b-9d46-1b07faa70722": { "layer": 0, "type": "text", "pos": [ -32, -32 ], "width": 64.0, "height": 64.0, "color": "#000000ff", "bold": true, "italic": false, "size": 64.0, "text": "R" } }, "port_positions": { "0ac7d4ea-77f7-4c0d-8e37-406ef66e4740": [ -8, -8 ], "d1f5aab2-7bff-4b1e-8697-98fb6c3d8f02": [ 16, -32 ] } }, "033b930e-bf79-403a-8b0b-a159f3c81ce9": { "shapes": { "2a5bf670-c821-442b-9d46-1b07faa70722": { "layer": 0, "type": "text", "pos": [ -32, -32 ], "width": 64.0, "height": 64.0, "color": "#000000ff", "bold": true, "italic": false, "size": 64.0, "text": "I" } }, "port_positions": { "0b9036b1-e4e4-437e-8c35-f5bb391b6cbd": [ -8, -8 ], "fb25f35d-4c0c-4cfa-92d4-1a18a71e2c11": [ 16, -32 ] } }, "2804f2f1-6123-4a53-aff1-87a3a8202711": { "shapes": { "2a5bf670-c821-442b-9d46-1b07faa70722": { "layer": 0, "type": "text", "pos": [ -77, -32 ], "width": 152.0, "height": 64.0, "color": "#000000ff", "bold": true, "italic": false, "size": 64.0, "text": "MSe" } }, "port_positions": { "5b6a8a0c-0875-402c-bd74-11d086aac372": [ -8, -8 ], "239bd18c-ff3d-4713-a5a4-0207973afb36": [ -65, -29 ] } }, "77701f68-b14c-4b98-8929-c5fba0261962": { "shapes": { "2a5bf670-c821-442b-9d46-1b07faa70722": { "layer": 0, "type": "text", "pos": [ -32, -32 ], "width": 64.0, "height": 64.0, "color": "#000000ff", "bold": true, "italic": false, "size": 64.0, "text": "R" } }, "port_positions": { "4a3f69f2-b305-4305-92e3-3998634ff226": [ -8, -8 ] } }, "7e0f1689-4173-42c2-b0c3-4c01cd699fcc": { "shapes": { "9ed4189a-123b-431f-a6bc-bbf169487703": { "layer": 0, "type": "rectangle", "pos": [ -48, -48 ], "width": 96.0, "height": 96.0, "line_type": "solid", "line_thickness": 5.0, "corner_radius": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" }, "ac1b7cf2-ce50-44b7-9f8f-077ca36f7369": { "layer": 4, "type": "line", "pos": [ -32, -32 ], "end": [ -32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "2e623060-349e-4a48-97b0-a81921df5870": { "layer": 2, "type": "line", "pos": [ -32, 32 ], "end": [ 32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "e231a6f0-da98-4e5d-ad1a-7c11048a50fb": { "layer": 3, "type": "line", "pos": [ -32, 14 ], "end": [ 3, 14 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "43393c01-9198-4f64-a158-dc44dce92624": { "layer": 5, "type": "line", "pos": [ 3, 14 ], "end": [ 3, -13 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "45e988a2-393d-4a4c-b692-6c0150072f73": { "layer": 6, "type": "line", "pos": [ 3, -13 ], "end": [ 32, -13 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" } }, "port_positions": { "37eb6e52-6e89-4e09-8923-43c6230f5486": [ -8, -8 ] } }, "aa0ff170-82d0-4f5e-9151-3b8478531e97": { "shapes": { "3563b7fb-f86d-4df4-90c8-fef103e253e9": { "layer": 0, "type": "rectangle", "pos": [ -48, -48 ], "width": 96.0, "height": 96.0, "line_type": "solid", "line_thickness": 5.0, "corner_radius": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" }, "545a1285-8eca-4a11-8cf5-c9ac07d7ddd6": { "layer": 4, "type": "line", "pos": [ -32, -32 ], "end": [ -32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "2b8a18b0-7ca4-4c35-98c1-05efaacc6079": { "layer": 2, "type": "line", "pos": [ -32, 32 ], "end": [ 32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "15b1b956-ec01-44b9-86f7-6274801deffb": { "layer": 3, "type": "line", "pos": [ -32, -9 ], "end": [ 32, -9 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" } }, "port_positions": { "b39afdc2-a419-459a-bdf2-5358bf38103d": [ -8, -8 ] } }, "2b3844e8-1875-40d0-ae4e-7a14ca217bce": { "shapes": { "5088d827-d554-4d4a-b2f2-818b2488c5b2": { "layer": 0, "type": "rectangle", "pos": [ -48, -48 ], "width": 96.0, "height": 96.0, "line_type": "solid", "line_thickness": 5.0, "corner_radius": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" }, "4d18c283-1f6a-404f-a2e3-85866dce36b6": { "layer": 4, "type": "line", "pos": [ -32, -32 ], "end": [ -32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "8433da05-3b9f-421e-9f56-170889d7a609": { "layer": 2, "type": "line", "pos": [ -32, 32 ], "end": [ 32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "47bf4d6c-bb28-4743-8672-cf39c4177242": { "layer": 3, "type": "line", "pos": [ -32, 23 ], "end": [ 32, -9 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" } }, "port_positions": { "5807dc83-d049-4f0f-9708-d041a752fcd0": [ -8, -8 ] } }, "c07a8cfb-323b-432b-8a6f-23b1a60eb593": { "shapes": { "14409738-45af-40c5-9c9e-827218d54a95": { "layer": 0, "type": "rectangle", "pos": [ -48, -48 ], "width": 96.0, "height": 96.0, "line_type": "solid", "line_thickness": 5.0, "corner_radius": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" }, "630596d8-59a2-4bdc-a4be-bda53c0257b4": { "layer": 1, "type": "text", "pos": [ -34, -35 ], "width": 68.0, "height": 71.0, "color": "#00007fff", "bold": false, "italic": false, "size": 48.0, "text": "K" } }, "port_positions": { "d5681d1d-70ee-4623-a41a-5a572e46d42c": [ -8, -8 ] } }, "6596fb5f-0b16-4f9b-804b-5b8b81db4158": { "shapes": { "0b6fb297-1cf1-4f93-b64c-7e201dc09c19": { "layer": 0, "type": "text", "pos": [ -32, -32 ], "width": 64.0, "height": 64.0, "color": "#000000ff", "bold": true, "italic": false, "size": 64.0, "text": "1" } }, "port_positions": { "44bfb5f7-d8bf-4922-bac8-a001c077893e": [ -8, -8 ], "30d830d5-adc9-4b84-960f-a7b51f68adf4": [ 8, -32 ] } }, "8e8dca73-2d11-4631-9c24-5e1a4e3b2920": { "shapes": { "02c7e2f5-7490-4a5f-abc0-15a584403a9f": { "layer": 0, "type": "text", "pos": [ -32, -32 ], "width": 64.0, "height": 64.0, "color": "#000000ff", "bold": true, "italic": false, "size": 64.0, "text": "0" } }, "port_positions": { "707394db-dff5-4591-b716-23f32b56d4a6": [ -8, -8 ], "a2709c23-7485-43b2-bc87-28a0f4c37c0b": [ 9, -32 ] } }, "404e82f4-19e2-44ad-b409-3f021e483a39": { "shapes": { "29dafe3d-8392-49c0-98ee-80e941b32a52": { "layer": 0, "type": "rectangle", "pos": [ -48, -48 ], "width": 96.0, "height": 96.0, "line_type": "solid", "line_thickness": 5.0, "corner_radius": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" }, "d24da1c9-bae9-41e6-aee4-79e5f238ea72": { "layer": 1, "type": "text", "pos": [ -15, -47 ], "width": 31.0, "height": 81.0, "color": "#00007fff", "bold": false, "italic": false, "size": 72.0, "text": "∫" } }, "port_positions": { "441a44d0-bbe5-49f0-bb0e-5bc891218aca": [ 7, -7 ], "8d4b0f2c-2e13-4cfd-a8da-6c03ade4fbbf": [ -22, -7 ] } }, "2b0156f6-9977-4735-88dd-14f5eb3d87b5": { "shapes": { "702ce5c1-a37a-4f89-8261-0be4b433ae79": { "layer": 0, "type": "rectangle", "pos": [ -48, -48 ], "width": 96.0, "height": 96.0, "line_type": "solid", "line_thickness": 5.0, "corner_radius": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" }, "32ccfd50-07dd-4524-be5d-e96a3136d520": { "layer": 1, "type": "text", "pos": [ -40, -31 ], "width": 78.0, "height": 62.0, "color": "#00007fff", "bold": false, "italic": false, "size": 38.0, "text": "d/dt" } }, "port_positions": { "d61847c9-0628-4e86-ad91-9390f92f926d": [ 7, -7 ], "f18c8fd2-dda5-4e8d-a5a7-a22a38abb091": [ -22, -7 ] } }, "927326ff-f73a-4f98-b7fd-aaf97989121e": { "shapes": { "89e11690-3faa-482b-a054-10a2c7565c43": { "layer": 0, "type": "rectangle", "pos": [ -48, -48 ], "width": 96.0, "height": 96.0, "line_type": "solid", "line_thickness": 5.0, "corner_radius": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" }, "de170a5b-c959-4d6d-afda-fa867dfbca51": { "layer": 4, "type": "line", "pos": [ -32, -32 ], "end": [ -32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "94fc1429-0ef2-403b-aa5d-7edcb7b3ebf2": { "layer": 2, "type": "line", "pos": [ -32, 32 ], "end": [ 32, 32 ], "line_type": "solid", "line_thickness": 3.0, "line_color": "#000000ff" }, "0d82b577-e3fb-4434-adfb-883e1918e30f": { "layer": 3, "type": "line", "pos": [ -32, 14 ], "end": [ -14, 14 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "531dcbea-2c2d-4ed9-bcbc-dfc9b0145527": { "layer": 5, "type": "line", "pos": [ -13, 14 ], "end": [ -13, -12 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "c4476a1b-7216-4eab-aad6-69ecb5af4b79": { "layer": 6, "type": "line", "pos": [ -13, -13 ], "end": [ 4, -13 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "2b69a1e2-0f80-4a1a-b31c-1f32b91bc46a": { "layer": 7, "type": "line", "pos": [ 4, -13 ], "end": [ 4, 14 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "7fac6744-2d5b-49a4-bfca-27cc8889a5b6": { "layer": 8, "type": "line", "pos": [ 4, 14 ], "end": [ 21, 14 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "81390b87-3648-4556-a439-9456232781df": { "layer": 9, "type": "line", "pos": [ 21, 14 ], "end": [ 21, -13 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" }, "c3c9eddf-f4c7-4f76-8bc5-7c313fc9ea72": { "layer": 10, "type": "line", "pos": [ 21, -14 ], "end": [ 32, -14 ], "line_type": "solid", "line_thickness": 2.0, "line_color": "#ffaa00ff" } }, "port_positions": { "4f9f6b29-36f0-460e-9fd9-d4bdf0ea3c80": [ -8, -8 ] } }, "ac215607-dd97-4142-b42f-f23502e51cfa": { "shapes": { "9336da30-7335-4eea-a8a2-ae69d8cad9e1": { "layer": 1, "type": "ellipse", "pos": [ -36, -36 ], "width": 72.0, "height": 72.0, "line_type": "solid", "line_thickness": 8.0, "line_color": "#00007fff", "fill_color": "#ebebebff" } }, "port_positions": { "baadcb27-0807-4366-819f-7396a1ed205d": [ -24, 9 ], "53cc98de-2e05-49ea-af26-e26d5dcd99e7": [ -24, -26 ], "0574652d-df52-4798-8072-da0a26eee873": [ 11, -8 ] } } } }, "graph_database": { "format_version": 1, "graphs": { "50e6ef97-f686-4400-bc01-e5a352e8cc22": { "shapes": {}, "component_positions": { "43b3aee6-0b38-429b-9c6d-d38fc097297f": [ 64, -384 ], "9ee2f42b-5ed1-446d-8790-c2a1df6b61d3": [ 64, -128 ], "5a8b2e8d-489f-467b-8282-7e344dfad576": [ 320, -128 ], "2804f2f1-6123-4a53-aff1-87a3a8202711": [ -192, -128 ], "9f392c28-6bef-4b10-9305-93e250747007": [ 64, 128 ], "77701f68-b14c-4b98-8929-c5fba0261962": [ 320, 128 ], "033b930e-bf79-403a-8b0b-a159f3c81ce9": [ -192, 128 ], "1455acad-931b-4caa-be71-aff4283507c6": [ 64, 384 ], "015a0697-69a9-43bf-9410-d2c8b44303f8": [ 64, 384 ], "4e3d1c6f-90a9-44bd-a91e-0619ce0cec63": [ -460, -100 ], "7e0f1689-4173-42c2-b0c3-4c01cd699fcc": [ -432, -128 ], "aa0ff170-82d0-4f5e-9151-3b8478531e97": [ -432, 48 ], "2b3844e8-1875-40d0-ae4e-7a14ca217bce": [ -428, 744 ], "bf08f999-bfe8-493a-9ad2-9c2965e17d6d": [ -504, -292 ], "c07a8cfb-323b-432b-8a6f-23b1a60eb593": [ 64, 308 ], "2cb26679-2488-4766-9ba2-b35c197e327f": [ 64, -128 ], "408a4376-47c4-456b-ba49-4594b7a18892": [ 64, 128 ], "6596fb5f-0b16-4f9b-804b-5b8b81db4158": [ 64, -128 ], "8e8dca73-2d11-4631-9c24-5e1a4e3b2920": [ 64, 128 ], "ac5011ce-4659-4bdd-900a-63a1c779652c": [ -432, 560 ], "ec0599cb-b57b-4194-b166-526d5cd5382a": [ -120, 656 ], "83dd8220-554c-4907-b713-c37e1f600f0d": [ -96, 648 ], "404e82f4-19e2-44ad-b409-3f021e483a39": [ 228, 640 ], "2b0156f6-9977-4735-88dd-14f5eb3d87b5": [ 232, 828 ], "927326ff-f73a-4f98-b7fd-aaf97989121e": [ -428, 552 ], "ac215607-dd97-4142-b42f-f23502e51cfa": [ -96, 636 ], "b3e059a3-4517-435d-aa63-ddfbbf6fa071": [ 488, 552 ] }, "component_labels": { "43b3aee6-0b38-429b-9c6d-d38fc097297f": { "relative_position": [ 52, -44 ], "visible": true }, "9ee2f42b-5ed1-446d-8790-c2a1df6b61d3": { "relative_position": [ 0, 8 ], "visible": false }, "9f392c28-6bef-4b10-9305-93e250747007": { "relative_position": [ 0, 8 ], "visible": false }, "408a4376-47c4-456b-ba49-4594b7a18892": { "relative_position": [ 0, 8 ], "visible": false }, "2cb26679-2488-4766-9ba2-b35c197e327f": { "relative_position": [ 0, 8 ], "visible": false }, "6596fb5f-0b16-4f9b-804b-5b8b81db4158": { "relative_position": [ 0, 8 ], "visible": false }, "8e8dca73-2d11-4631-9c24-5e1a4e3b2920": { "relative_position": [ 0, 8 ], "visible": false } }, "connections": { "7e293c73-1e07-4d4c-b750-6f43870c71c4": { "points": [ [ -320, -128 ], [ -128, -128 ] ] }, "66414b62-ca76-4be6-8da4-72551f8ffc0e": { "points": [ [ 128, 160 ], [ 352, 96 ] ] }, "1f52dc5a-1847-4982-aabc-2538cf99a86f": { "points": [ [ 128, 160 ], [ 352, 224 ] ] } } } } }, "simulation_database": { "format_version": 1, "active_simulation": "7778ca68-7a36-401b-b4aa-236a44c5e771", "simulations": { "7778ca68-7a36-401b-b4aa-236a44c5e771": { "component": "50e6ef97-f686-4400-bc01-e5a352e8cc22", "name": "run bondgraph", "start_time": 0.0, "duration": 10.0, "use_timed_steps": true, "number_of_steps": 500, "step_size": 0.001, "method": "dassl", "dassl_tolerance": 1e-06 } } }, "port_metadata_database": { "format_version": 1, "ports": { "53cc98de-2e05-49ea-af26-e26d5dcd99e7": { "connection_annotation": "-" }, "baadcb27-0807-4366-819f-7396a1ed205d": { "connection_annotation": "+" } } } } }