4.8
0
False
C:\users\wouter\My Documents\studie\ma\mahd\implementation\SCARA\02_physics\scara_physics.emx
2020-7-14 15:30:34
parameters
real A = 0.05 {m};
real B = 0.05 {m};
variables
real J0_1_BF1[2];
real J1_2_BF1[2];
real J1_2_BF2[2];
real EE1_BF2[2];
initialequations
J0_1_BF1 = [A/2;0];
J1_2_BF1 = [-A/2;0];
J1_2_BF2 = [B/2;0];
EE1_BF2 = [-B/2;0];
';
type Mainmodel
end;
implementation bg
submodels
Constant 80 96
description '4.01False
Signal\Sources\Constant.emx
2007-10-19 14:48:44
';
type Constant
ports
signal out output;
end;
icon bg bottom
figures
rectangle 64.1 80 95.9 112 color 0 fill 15132390;
line 68.9 91.6 90.9 91.6 color 16711680 width 2;
line 66.2 102.7 91.9 102.7 color 0;
line 68.5 86.7 68.5 105 color 0;
end;
implementation eq
parameters
real C = 1.0; // output value
equations
output = C;
implementation_end;
I 312 112
description '
4.2
1
False
Bond Graph\I.emx
2011-11-29 15:55:55
';
type I
ports
power in p;
signal out state;
signal in i;
restrictions
causality preferred in p;
end;
icon bg bottom
figures
text 'I' 312 112 color 0 18 bold;
end;
implementation eq
equations
state = int(p.e);
p.f = state / i;
implementation_end;
I1 704 112
description '
4.2
1
False
Bond Graph\I.emx
2011-11-29 15:55:55
';
type I
ports
power in p;
signal out state;
signal in i;
restrictions
causality preferred in p;
end;
icon bg bottom
figures
text 'I' 704 112 color 0 18 bold;
end;
implementation eq
equations
state = int(p.e);
p.f = state / i;
implementation_end;
MSe 504 96
description '
4.2
1
False
Bond Graph\MSe.emx
2011-11-29 16:12:33
';
type MSe
ports
power out p;
signal in effort;
restrictions
causality fixed out p;
end;
icon bg bottom
figures
text 'MSe' 504 96 color 0 18 bold;
end;
implementation eq
variables
real flow;
equations
p.e = effort;
flow = p.f;
implementation_end;
MSe1 168 168
description '
4.2
1
False
Bond Graph\MSe.emx
2011-11-29 16:12:33
';
type MSe
ports
power out p;
signal in effort;
restrictions
causality fixed out p;
end;
icon bg bottom
figures
text 'MSe' 168 168 color 0 18 bold;
end;
implementation eq
variables
real flow;
equations
p.e = effort;
flow = p.f;
implementation_end;
OneJunction 304 304
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 304 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction1 304 456
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 304 456 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction10 704 168
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [1];
signal knot out flow [1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 704 168 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction11 864 448
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 864 448 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction12 584 304
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 584 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction3 312 168
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [1];
signal knot out flow [1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 312 168 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction5 152.3 304
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 152.3 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction6 152 456
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 152 456 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction7 704 304
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 704 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction8 704 456
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 704 456 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
OneJunction9 864 304
description '
4.2
1
False
Bond Graph\OneJunction.emx
2011-11-29 16:17:51
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 864 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
PlusMinus1 512 336
description '4.01False
Signal\Block Diagram\PlusMinus.emx
2007-9-27 10:15:13
';
knot PlusMinus
ports
signal knot duplicatable in plus [1];
signal knot duplicatable in minus [1];
signal knot out output [1];
end;
icon bg ellipse
figures
ellipse 504 328 520 344 color 0 fill 16777215;
end;
implementation eq
equations
output = sum (collect (plus)) - sum (collect (minus));
implementation_end;
RTF 304 392
description '
4.8
1
False
Bond Graph\2D\RTF-2.emx
2020-7-14 12:43:04
';
type 'TF-2'
ports
power in p1 [2,1];
power out p2 [2,1];
signal in angle {rad} ;
restrictions
causality constraint not_equal p1 p2;
end;
icon bg bottom
figures
text 'RTF' 304 392 color 0 18 bold;
end;
implementation eq
/*
2D rotation transformer. Takes an angle as input and then rotates the dimensions
*/
variables
real r[2,2];
equations
r = [cos(angle), -sin(angle); sin(angle), cos(angle)];
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
RTF1 512 304
description '
4.8
1
False
Bond Graph\2D\RTF-2.emx
2020-7-14 12:43:04
';
type 'TF-2'
ports
power in p1 [2,1];
power out p2 [2,1];
signal in angle {rad} ;
restrictions
causality constraint not_equal p1 p2;
end;
icon bg bottom
figures
text 'RTF' 512 304 color 0 18 bold;
end;
implementation eq
/*
2D rotation transformer. Takes an angle as input and then rotates the dimensions
*/
variables
real r[2,2];
equations
r = [cos(angle), -sin(angle); sin(angle), cos(angle)];
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
RTF2 152 368
description '
4.8
1
False
Bond Graph\2D\RTF-2.emx
2020-7-14 12:43:04
';
type 'TF-2'
ports
power in p1 [2,1];
power out p2 [2,1];
signal in angle {rad} ;
restrictions
causality constraint not_equal p1 p2;
end;
icon bg bottom
figures
text 'RTF' 152 368 color 0 18 bold;
end;
implementation eq
/*
2D rotation transformer. Takes an angle as input and then rotates the dimensions
*/
variables
real r[2,2];
equations
r = [cos(angle), -sin(angle); sin(angle), cos(angle)];
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
RTF3 704 368
description '
4.8
1
False
Bond Graph\2D\RTF-2.emx
2020-7-14 12:43:04
';
type 'TF-2'
ports
power in p1 [2,1];
power out p2 [2,1];
signal in angle {rad} ;
restrictions
causality constraint not_equal p1 p2;
end;
icon bg bottom
figures
text 'RTF' 704 368 color 0 18 bold;
end;
implementation eq
/*
2D rotation transformer. Takes an angle as input and then rotates the dimensions
*/
variables
real r[2,2];
equations
r = [cos(angle), -sin(angle); sin(angle), cos(angle)];
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
RTF4 864 360
description '
4.8
1
False
Bond Graph\2D\RTF-2.emx
2020-7-14 12:43:04
';
type 'TF-2'
ports
power in p1 [2,1];
power out p2 [2,1];
signal in angle {rad} ;
restrictions
causality constraint not_equal p1 p2;
end;
icon bg bottom
figures
text 'RTF' 864 360 color 0 18 bold;
end;
implementation eq
/*
2D rotation transformer. Takes an angle as input and then rotates the dimensions
*/
variables
real r[2,2];
equations
r = [cos(angle), -sin(angle); sin(angle), cos(angle)];
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
Sf 72 456
description '4.01False
Bond Graph\2D\Sf-2.emx
2007-9-25 12:7:5
';
type 'Sf-2'
ports
power out p [2,1];
restrictions
causality fixed in p;
end;
icon bg bottom
figures
text 'Sf' 72 456 color 0 18 bold;
end;
implementation eq
parameters
real flow[2,1] = [0.0; 0.0];
variables
real effort [2];
equations
p.f = flow;
effort = p.e;
implementation_end;
Splitter1 264 336
description '4.0
Signal\Block Diagram\Splitter.emx
2008-01-17 11:28:29
1
False
';
knot Splitter
ports
signal knot duplicatable out output [1];
signal knot in input [1];
end;
icon bg ellipse
figures
ellipse 260.8 332.8 267.2 339.2 color -1 fill 0;
ellipse 259.7 331.7 268.3 340.3 color -1;
terminals
input 264 336 fixed;
end;
implementation eq
equations
collect (output) = input;
implementation_end;
Splitter2 680 336
description '4.0
Signal\Block Diagram\Splitter.emx
2008-01-17 11:28:29
1
False
';
knot Splitter
ports
signal knot duplicatable out output [1];
signal knot in input [1];
end;
icon bg ellipse
figures
ellipse 676.8 332.8 683.2 339.2 color -1 fill 0;
ellipse 675.7 331.7 684.3 340.3 color -1;
terminals
input 680 336 fixed;
end;
implementation eq
equations
collect (output) = input;
implementation_end;
Splitter3 168 96
description '4.0
Signal\Block Diagram\Splitter.emx
2008-01-17 11:28:29
1
False
';
knot Splitter
ports
signal knot duplicatable out output [1];
signal knot in input [1];
end;
icon bg ellipse
figures
ellipse 164.8 92.8 171.2 99.2 color -1 fill 0;
ellipse 163.7 91.7 172.3 100.3 color -1;
terminals
input 168 96 fixed;
end;
implementation eq
equations
collect (output) = input;
implementation_end;
Submodel1 304 528
description '4.81parameters
real mass = 1 {kg};';
type Submodel
ports
power in p [2,1];
signal in mass {kg} ;
end;
implementation bg
submodels
Gain 368 408
description '4.01False
Signal\Block Diagram\Gain.emx
2007-9-26 12:15:12
';
type Gain
ports
signal in input;
signal out output [2,1];
end;
icon bg bottom
figures
rectangle 352.1 392 383.9 424 color 0 fill 15132390;
text 'K' 368 408 color 16711680 16 bold;
end;
implementation eq
equations
output = [0;-g_n] * input;
implementation_end;
I 248 520
description '4.01False
Bond Graph\2D\I-2.emx
2007-9-25 12:7:37
';
type 'I-2'
ports
power in p [2,1];
signal out state [2,1];
signal in mass {kg} ;
restrictions
causality preferred in p;
end;
icon bg bottom
figures
text 'I' 248 520 color 0 18 bold;
end;
implementation eq
equations
state = int(p.e);
p.f = inverse ([mass,0;0,mass]) * state;
implementation_end;
plug p 304 468;
plug mass 208 408;
OneJunction2 304 520
description '4.01False
Bond Graph\OneJunction.emx
2007-9-27 9:51:18
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 304 520 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
Sg 368 520
description '4.01False
Bond Graph\2D\MSe-2.emx
2007-9-25 12:7:58
';
type 'MSe-2'
ports
power out p [2,1];
signal in effort [2,1];
restrictions
causality fixed out p;
end;
icon bg bottom
figures
text 'MSe' 368 520 color 0 18 bold;
end;
implementation eq
variables
real flow[2];
equations
p.e = effort;
flow = p.f;
implementation_end;
Splitter1 248 408
description '4.0
Signal\Block Diagram\Splitter.emx
2008-01-17 11:28:29
1
False
';
knot Splitter
ports
signal knot duplicatable out output [1];
signal knot in input [1];
end;
icon bg ellipse
figures
ellipse 244.8 404.8 251.2 411.2 color -1 fill 0;
ellipse 243.7 403.7 252.3 412.3 color -1;
terminals
input 248 408 fixed;
end;
implementation eq
equations
collect (output) = input;
implementation_end;
end;
connections
Gain\output -> Sg\effort;
I\p <= OneJunction2\p;
mass -> Splitter1\input;
p => OneJunction2\p;
Sg\p => OneJunction2\p;
Splitter1\output -> Gain\input;
Splitter1\output -> I\mass;
end;
implementation_end;
Submodel2 704 528
description '4.81parameters
real mass = 1 {kg};';
type Submodel
ports
power in p [2,1];
signal in mass {kg} ;
end;
icon bg
figures
rectangle 664 512 744 544 fill 15132390;
text 'name' 704 528 16;
end;
implementation bg
submodels
Gain 368 408
description '4.01False
Signal\Block Diagram\Gain.emx
2007-9-26 12:15:12
';
type Gain
ports
signal in input;
signal out output [2,1];
end;
icon bg bottom
figures
rectangle 352.1 392 383.9 424 color 0 fill 15132390;
text 'K' 368 408 color 16711680 16 bold;
end;
implementation eq
equations
output = [0;-g_n] * input;
implementation_end;
I 248 520
description '4.01False
Bond Graph\2D\I-2.emx
2007-9-25 12:7:37
';
type 'I-2'
ports
power in p [2,1];
signal out state [2,1];
signal in mass {kg} ;
restrictions
causality preferred in p;
end;
icon bg bottom
figures
text 'I' 248 520 color 0 18 bold;
end;
implementation eq
equations
state = int(p.e);
p.f = inverse ([mass,0;0,mass]) * state;
implementation_end;
plug p 304 468;
plug mass 208 408;
OneJunction2 304 520
description '4.01False
Bond Graph\OneJunction.emx
2007-9-27 9:51:18
';
knot OneJunction
ports
power knot duplicatable none p [2,1];
signal knot out flow [2,1];
restrictions
causality constraint one_out p;
end;
icon bg
figures
text '1' 304 520 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.e)) = 0;
equal (collect (p.f));
flow = first (p.f);
implementation_end;
Sg 368 520
description '4.01False
Bond Graph\2D\MSe-2.emx
2007-9-25 12:7:58
';
type 'MSe-2'
ports
power out p [2,1];
signal in effort [2,1];
restrictions
causality fixed out p;
end;
icon bg bottom
figures
text 'MSe' 368 520 color 0 18 bold;
end;
implementation eq
variables
real flow[2];
equations
p.e = effort;
flow = p.f;
implementation_end;
Splitter1 248 408
description '4.0
Signal\Block Diagram\Splitter.emx
2008-01-17 11:28:29
1
False
';
knot Splitter
ports
signal knot duplicatable out output [1];
signal knot in input [1];
end;
icon bg ellipse
figures
ellipse 244.8 404.8 251.2 411.2 color -1 fill 0;
ellipse 243.7 403.7 252.3 412.3 color -1;
terminals
input 248 408 fixed;
end;
implementation eq
equations
collect (output) = input;
implementation_end;
end;
connections
Gain\output -> Sg\effort;
I\p <= OneJunction2\p;
mass -> Splitter1\input;
p => OneJunction2\p;
Sg\p => OneJunction2\p;
Splitter1\output -> Gain\input;
Splitter1\output -> I\mass;
end;
implementation_end;
Submodel3 224 416
description '4.0
Template\Submodel-Equation.emx
1
False
2007-11-1 22:32:1
False
';
type 'Submodel-Equation'
ports
signal in angle_velocity {rad/s} ;
signal out angle {rad} ;
signal in velocity [2,1] {m/s} ;
signal out position [2,1] {m} ;
signal out mass {kg} ;
signal out angular_momentum {N.m.s} ;
end;
implementation eq
/* Equation Submodel
Enter your equations here. You can use the Toolbar buttons at the top ( Add , f(x) etc. ).
*/
parameters
real density = 1 {kg/m3};
real dimension[3] = [1;1;1] {m};
real initial_position[2] = [0;0] {m};
real initial_angle = 0 {rad};
variables
real body_angle[3];
real body_position[3];
real body_size[3];
real moment[3];
initialequations
mass = dimension[1] * dimension[2] * dimension[3] * density;
moment[1] = mass/12 * ( dimension[2]^2 + dimension[3]^2);
moment[2] = mass/12 * ( dimension[1]^2 + dimension[3]^2);
moment[3] = mass/12 * ( dimension[1]^2 + dimension[2]^2);
angular_momentum = moment[1];
equations
angle = int(angle_velocity,initial_angle);
body_angle = [angle;0;0];
position = int(velocity,initial_position);
body_position = [0; position[1];position[2]];
implementation_end;
Submodel4 624 416
description '4.0
Template\Submodel-Equation.emx
1
False
2007-11-1 22:32:1
False
';
type 'Submodel-Equation'
ports
signal in angle_velocity {rad/s} ;
signal out angle {rad} ;
signal in velocity [2,1] {m/s} ;
signal out position [2,1] {m} ;
signal out mass {kg} ;
signal out angular_momentum {N.m.s} ;
end;
implementation eq
/* Equation Submodel
Enter your equations here. You can use the Toolbar buttons at the top ( Add , f(x) etc. ).
*/
parameters
real density = 1 {kg/m3};
real dimension[3] = [1;1;1] {m};
real initial_position[2] = [0;0] {m};
real initial_angle = 0.01 {rad};
variables
real body_angle[3];
real body_position[3];
real body_size[3];
real moment[3];
initialequations
mass = dimension[1] * dimension[2] * dimension[3] * density;
moment[1] = mass/12 * ( dimension[2]^2 + dimension[3]^2);
moment[2] = mass/12 * ( dimension[1]^2 + dimension[3]^2);
moment[3] = mass/12 * ( dimension[1]^2 + dimension[2]^2);
angular_momentum = moment[1];
equations
angle = int(angle_velocity,initial_angle);
body_angle = [angle;0;0];
position = int(velocity,initial_position);
body_position = [0; position[1];position[2]];
implementation_end;
TF 384 224
description '
4.8
1
False
Bond Graph\2D\XTF-2.emx
2020-7-14 15:06:10
True
';
type 'TF-2'
ports
power in p1;
power out p2 [2,1];
restrictions
causality constraint not_equal p1 p2;
causality fixed in p2;
causality fixed out p1;
end;
icon bg bottom
figures
text 'XTF' 384 224 color 0 18 bold;
end;
implementation eq
parameters
real x;
real y;
variables
real r[2,1];
initialequations
r = [-y; x];
equations
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
TF2 784 224
description '
4.8
1
False
Bond Graph\2D\XTF-2.emx
2020-7-14 15:06:10
True
';
type 'TF-2'
ports
power in p1;
power out p2 [2,1];
restrictions
causality constraint not_equal p1 p2;
causality fixed in p2;
causality fixed out p1;
end;
icon bg bottom
figures
text 'XTF' 784 224 color 0 18 bold;
end;
implementation eq
parameters
real x;
real y;
variables
real r[2,1];
initialequations
r = [-y; x];
equations
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
TF3 632.3 224
description '
4.8
1
False
Bond Graph\2D\XTF-2.emx
2020-7-14 15:06:10
True
';
type 'TF-2'
ports
power in p1;
power out p2 [2,1];
restrictions
causality constraint not_equal p1 p2;
causality fixed in p2;
causality fixed out p1;
end;
icon bg bottom
figures
text 'XTF' 632.3 224 color 0 18 bold;
end;
implementation eq
parameters
real x;
real y;
variables
real r[2,1];
initialequations
r = [-y; x];
equations
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
XTF 232.3 224
description '
4.8
1
False
Bond Graph\2D\XTF-2.emx
2020-7-14 15:06:10
True
';
type 'TF-2'
ports
power in p1;
power out p2 [2,1];
restrictions
causality constraint not_equal p1 p2;
causality fixed in p2;
causality fixed out p1;
end;
icon bg bottom
figures
text 'XTF' 232.3 224 color 0 18 bold;
end;
implementation eq
parameters
real x;
real y;
variables
real r[2,1];
initialequations
r = [-y; x];
equations
p1.e = transpose (r) * p2.e;
p2.f = r * p1.f;
implementation_end;
ZeroJunction 384 304
description '
4.2
1
False
Bond Graph\ZeroJunction.emx
2011-11-29 16:45:16
';
knot ZeroJunction
ports
power knot duplicatable none p [2,1];
signal knot out effort [2,1];
restrictions
causality constraint one_in p;
end;
icon bg
figures
text '0' 384 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.f)) = 0;
equal (collect (p.e));
effort = first (p.e);
implementation_end;
ZeroJunction1 232.3 304
description '
4.2
1
False
Bond Graph\ZeroJunction.emx
2011-11-29 16:45:16
';
knot ZeroJunction
ports
power knot duplicatable none p [2,1];
signal knot out effort [2,1];
restrictions
causality constraint one_in p;
end;
icon bg
figures
text '0' 232.3 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.f)) = 0;
equal (collect (p.e));
effort = first (p.e);
implementation_end;
ZeroJunction2 784 304
description '
4.2
1
False
Bond Graph\ZeroJunction.emx
2011-11-29 16:45:16
';
knot ZeroJunction
ports
power knot duplicatable none p [2,1];
signal knot out effort [2,1];
restrictions
causality constraint one_in p;
end;
icon bg
figures
text '0' 784 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.f)) = 0;
equal (collect (p.e));
effort = first (p.e);
implementation_end;
ZeroJunction3 632.3 304
description '
4.2
1
False
Bond Graph\ZeroJunction.emx
2011-11-29 16:45:16
';
knot ZeroJunction
ports
power knot duplicatable none p [2,1];
signal knot out effort [2,1];
restrictions
causality constraint one_in p;
end;
icon bg
figures
text '0' 632.3 304 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.f)) = 0;
equal (collect (p.e));
effort = first (p.e);
implementation_end;
ZeroJunction4 504 168
description '
4.2
1
False
Bond Graph\ZeroJunction.emx
2011-11-29 16:45:16
';
knot ZeroJunction
ports
power knot duplicatable none p [1];
signal knot out effort [1];
restrictions
causality constraint one_in p;
end;
icon bg
figures
text '0' 504 168 color 0 18 bold;
end;
implementation eq
equations
sum (direct (p.f)) = 0;
equal (collect (p.e));
effort = first (p.e);
implementation_end;
end;
connections
Constant\output -> Splitter3\input;
I\p <= OneJunction3\p;
I1\p <= OneJunction10\p;
MSe1\p => OneJunction3\p;
OneJunction\p => RTF\p1;
OneJunction\p => ZeroJunction\p;
OneJunction\p => ZeroJunction1\p;
OneJunction1\flow -> Submodel3\velocity 224 456;
OneJunction1\p => Submodel1\p;
OneJunction10\flow -> Submodel4\angle_velocity 608 224 608 360;
OneJunction10\p => TF2\p1;
OneJunction10\p => TF3\p1;
OneJunction3\flow -> Submodel3\angle_velocity 208 200 208 376;
OneJunction3\p => TF\p1;
OneJunction3\p => XTF\p1;
OneJunction3\p => ZeroJunction4\p;
OneJunction5\p => RTF2\p1;
OneJunction7\p => RTF3\p1;
OneJunction7\p => ZeroJunction2\p;
OneJunction7\p => ZeroJunction3\p;
OneJunction8\flow -> Submodel4\velocity 624 456;
OneJunction8\p => Submodel2\p;
OneJunction9\p => RTF4\p1;
PlusMinus1\output -> RTF1\angle;
RTF\p2 => OneJunction1\p;
RTF1\p2 => OneJunction12\p;
RTF2\p2 => OneJunction6\p;
RTF3\p2 => OneJunction8\p;
RTF4\p2 => OneJunction11\p;
Sf\p => OneJunction6\p;
Splitter1\output -> PlusMinus1\plus;
Splitter1\output -> RTF\angle 280 352 280 368;
Splitter1\output -> RTF2\angle 176 336;
Splitter2\output -> PlusMinus1\minus;
Splitter2\output -> RTF3\angle 680 344;
Splitter2\output -> RTF4\angle 832 336;
Splitter3\output -> MSe\effort;
Splitter3\output -> MSe1\effort;
Submodel3\angle -> Splitter1\input 248 384 248 352;
Submodel3\angular_momentum -> I\i 200 376 200 200;
Submodel3\mass -> Submodel1\mass 216 440 216 464 296 464 296 504;
Submodel4\angle -> Splitter2\input;
Submodel4\angular_momentum -> I1\i 600 360 600 224;
Submodel4\mass -> Submodel2\mass 616 464 696 488;
TF\p2 => ZeroJunction\p;
TF2\p2 => ZeroJunction2\p;
TF3\p2 => ZeroJunction3\p;
XTF\p2 => ZeroJunction1\p;
ZeroJunction\p => RTF1\p1;
ZeroJunction1\p => OneJunction5\p;
ZeroJunction2\p => OneJunction9\p;
ZeroJunction3\p => OneJunction12\p;
ZeroJunction4\p <= MSe\p;
ZeroJunction4\p => OneJunction10\p;
end;
implementation_end;
]]>
Experiment 1
4.8
TF\x
0
TF\y
0
TF2\x
0
TF2\y
0
TF3\x
0
TF3\y
0
XTF\x
0
XTF\y
0
I1\state_initial
0
I\state_initial
0
Submodel1\I\p.e_initial
2
1
0 0
Submodel2\I\p.e_initial
2
1
0 0
time
Submodel4\position[2]
Submodel4\position[1]
GraphPlot
1
false
16777215
true
true
15780518
12624260
0
10
10
10
false
16777215
true
1
model
true
Arial
12
34
400
0
0
0
0
Arial
12
34
400
0
0
0
0
Arial
10
34
400
0
0
0
0
Arial
12
34
400
0
0
0
0
true
true
false
-1.0
1.0
true
3
-0.5000000000000001
0.5
true
1
6076255
1
6076255
0
true
1
1
1
true
true
Submodel4\position[1]
true
Submodel4\position[2]
true
0
16777215
D3DPlot
2
false
16777215
true
3D Animation
137
true
false
4294967295
Gradients\BlueWhite.png
true
1.0
1.0
1
1
1
true
Reference Frame
Bryant
false
false
false
false
false
false
1
1
1
false
Default Lights and Cameras
Bryant
false
false
false
false
false
false
false
Ambient
1
1
Direct3D
false
false
false
false
false
false
0
0.3
0.3
0.3
1
1
1
true
0.3
0.3
0.3
1
1
1
true
true
false
false
false
Parallel
-3
5
3
0.457495710997814
-0.762492851663023
-0.457495710997814
0.235379601434674
-0.392299335724456
0.889211827642101
Direct3D
false
false
false
false
false
false
3
0.5
0.5
0.5
1
1
1
true
1.0
0.0
0.0
0.5
0.5
0.5
1
1
1
true
0.5
0.5
0.5
1
1
1
true
false
true
true
false
Spot Light 1
-3
-5
1
0.50709255283711
0.845154254728517
-0.169030850945703
0.0869656553478673
0.144942758913112
0.985610760609162
Direct3D
false
false
false
false
false
false
2
0.5
0.5
0.5
1
1
1
true
1.0
0.05
0.05
1.0471975511965976
1.0471975511965976
0.0
0.5
0.5
0.5
1
1
1
true
0.5
0.5
0.5
1
1
1
true
false
true
true
false
Spot Light 2
2
-3
-1
-0.534522483824849
0.801783725737273
0.267261241912424
0.14824986333222
-0.22237479499833
0.963624111659432
Direct3D
false
false
false
false
false
false
2
1
1
1
1
1
1
true
1.0
0.05
0.05
1.5707963267948966
1.5707963267948966
0.0
1
1
1
1
1
1
true
0.5
0.5
0.5
1
1
1
true
false
true
true
false
Camera Looking at Origin
8.08601856717543
3.82396406524929
3.99920023992003
-0.825275814177106
-0.390281698108316
-0.408166665292506
-0.368986018117198
-0.174497407115461
0.912907428682665
Direct3D
false
false
false
false
false
false
0.01
100.0
true
0.003926990816987242
45.0
-10.0
10.0
10.0
-10.0
true
true
1
true
true
true
false
Front(XY)-Camera
10
-1
1
Direct3D
false
false
false
false
false
false
0.01
100.0
true
9.999999999999998
45.0
-9.999999999999998
9.999999999999998
9.999999999999998
-9.999999999999998
true
true
1
true
false
false
false
Side(YZ)-Camera
10
-1
1
Direct3D
false
false
false
false
false
false
0.01
100.0
true
9.999999999999998
45.0
-9.999999999999998
9.999999999999998
9.999999999999998
-9.999999999999998
true
true
1
true
false
false
false
Top(XZ)-Camera
10
-1
1
Direct3D
false
false
false
false
false
false
0.01
100.0
true
9.999999999999998
45.0
-9.999999999999998
9.999999999999998
9.999999999999998
-9.999999999999998
true
true
1
true
false
false
1
1
1
false
Scenery
Bryant
false
false
false
false
false
false
Center
1.0
true
4
1
1
1
true
1
1
1
1.0
1
1
1
true
0.498039215686275
0.498039215686275
0.498039215686275
14.298713684082
false
false
Block
Bryant
false
false
false
false
false
false
1
true
Window 1
0
1
2
Base
0.126562 0.0935185 0.819792 0.916667
0.0
10.0
false
false
false
false
0.1
1.0e-6
1.0e-7
false
true
Euler
0.01
false
BackwardEuler
1.0e-5
1.0e-5
1.0e-5
1.0e-5
0.01
1.0
AdamsBashforth
0.01
false
RungeKutta2
0.01
false
RungeKutta4
0.01
false
RungeKutta8
false
0.001
false
1.0
1.0e-6
1.0e-6
0.9
0.33
6.0
0.0
false
100000
false
1000
RungeKuttaFehlberg
false
0.001
false
1.0
1.0e-6
1.0e-6
VodeAdams
false
0.001
false
1.0
1.0e-6
1.0e-6
true
true
BDFMethod
1.0e-5
1.0e-5
1.0e-5
1.0e-5
false
0.001
false
1.0
MeBDFiMethod
1.0e-5
1.0e-5
1.0e-5
1.0e-5
false
0.001
false
1.0
8
10
false
true
true
false
true
0
0.0
true
MultipleRun
true
UseEndValue
0.001
BroydonFletcherGoldfarbShanno
true
true
true
true
false
time
1.0