ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Comb_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Comb_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Comb_abg.m @@ -0,0 +1,125 @@ +function [Comb] = Comb_abg +# This function is the acausal bond graph representation of Comb +# Generated by MTT on Thu Mar 16 10:33:30 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Hydraulic_in + Comb.ports.Hydraulic_in.type = "SS"; + Comb.ports.Hydraulic_in.cr = "SS"; + Comb.ports.Hydraulic_in.arg = "external,external"; + Comb.ports.Hydraulic_in.repetitions = 1; + Comb.ports.Hydraulic_in.status = -1; + Comb.ports.Hydraulic_in.connections = [-3 ]; + +# Port Hydraulic_out + Comb.ports.Hydraulic_out.type = "SS"; + Comb.ports.Hydraulic_out.cr = "SS"; + Comb.ports.Hydraulic_out.arg = "external,external"; + Comb.ports.Hydraulic_out.repetitions = 1; + Comb.ports.Hydraulic_out.status = -1; + Comb.ports.Hydraulic_out.connections = [7 ]; + +# Port Heat + Comb.ports.Heat.type = "SS"; + Comb.ports.Heat.cr = "SS"; + Comb.ports.Heat.arg = "external,external"; + Comb.ports.Heat.repetitions = 1; + Comb.ports.Heat.status = -1; + Comb.ports.Heat.connections = [-5 ]; + +# Port Thermal_in + Comb.ports.Thermal_in.type = "SS"; + Comb.ports.Thermal_in.cr = "SS"; + Comb.ports.Thermal_in.arg = "external,external"; + Comb.ports.Thermal_in.repetitions = 1; + Comb.ports.Thermal_in.status = -1; + Comb.ports.Thermal_in.connections = [-2 ]; + +# Port Thermal_out + Comb.ports.Thermal_out.type = "SS"; + Comb.ports.Thermal_out.cr = "SS"; + Comb.ports.Thermal_out.arg = "external,external"; + Comb.ports.Thermal_out.repetitions = 1; + Comb.ports.Thermal_out.status = -1; + Comb.ports.Thermal_out.connections = [6 ]; + +# Component P + Comb.subsystems.P.type = "SS"; + Comb.subsystems.P.cr = "SS"; + Comb.subsystems.P.arg = "external,0"; + Comb.subsystems.P.repetitions = 1; + Comb.subsystems.P.status = -1; + Comb.subsystems.P.connections = [9 ]; + +# Component T + Comb.subsystems.T.type = "SS"; + Comb.subsystems.T.cr = "SS"; + Comb.subsystems.T.arg = "external,0"; + Comb.subsystems.T.repetitions = 1; + Comb.subsystems.T.status = -1; + Comb.subsystems.T.connections = [8 ]; + +# Component pipe + Comb.subsystems.pipe.type = "hPipe"; + Comb.subsystems.pipe.cr = "none"; + Comb.subsystems.pipe.arg = "m_c;v_c;r"; + Comb.subsystems.pipe.repetitions = 1; + Comb.subsystems.pipe.status = -1; + Comb.subsystems.pipe.connections = [5 3 -4 2 -1 ]; + +# Component mtt1 + Comb.subsystems.mtt1.type = "0"; + Comb.subsystems.mtt1.cr = ""; + Comb.subsystems.mtt1.arg = ""; + Comb.subsystems.mtt1.repetitions = 1; + Comb.subsystems.mtt1.status = -1; + Comb.subsystems.mtt1.connections = [1 -6 -8 ]; + +# Component mtt2 + Comb.subsystems.mtt2.type = "0"; + Comb.subsystems.mtt2.cr = ""; + Comb.subsystems.mtt2.arg = ""; + Comb.subsystems.mtt2.repetitions = 1; + Comb.subsystems.mtt2.status = -1; + Comb.subsystems.mtt2.connections = [4 -7 -9 ]; + +# Ordered list of Port names + Comb.portlist(1,:) = "Hydraulic_in "; + Comb.portlist(2,:) = "Hydraulic_out"; + Comb.portlist(3,:) = "Heat "; + Comb.portlist(4,:) = "Thermal_in "; + Comb.portlist(5,:) = "Thermal_out "; + +# Ordered list of subsystem names + Comb.subsystemlist(1,:) = "P "; + Comb.subsystemlist(2,:) = "T "; + Comb.subsystemlist(3,:) = "pipe"; + Comb.subsystemlist(4,:) = "mtt1"; + Comb.subsystemlist(5,:) = "mtt2"; + +# Bonds + Comb.bonds = [ + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 1 1 + 1 1 + ]; + +# Aliases +# A double underscore __ represents a comma +Comb.alias.out = "Thermal_out,Hydraulic_out"; +Comb.alias.Hy_out = "Hydraulic_out"; +Comb.alias.v_c = "$2"; +Comb.alias.Th_in = "Thermal_in"; +Comb.alias.r = "$3"; +Comb.alias.Th_out = "Thermal_out"; +Comb.alias.in = "Thermal_in,Hydraulic_in"; +Comb.alias.Hy_in = "Hydraulic_in"; +Comb.alias.m_c = "$1"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Density_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Density_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Density_abg.m @@ -0,0 +1,81 @@ +function [Density] = Density_abg +# This function is the acausal bond graph representation of Density +# Generated by MTT on Thu Mar 16 10:36:39 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Pressure + Density.ports.Pressure.type = "SS"; + Density.ports.Pressure.cr = "SS"; + Density.ports.Pressure.arg = "external,external"; + Density.ports.Pressure.repetitions = 1; + Density.ports.Pressure.status = -1; + Density.ports.Pressure.connections = [-4 ]; + +# Port Temperature + Density.ports.Temperature.type = "SS"; + Density.ports.Temperature.cr = "SS"; + Density.ports.Temperature.arg = "external,external"; + Density.ports.Temperature.repetitions = 1; + Density.ports.Temperature.status = -1; + Density.ports.Temperature.connections = [-5 ]; + +# Port Density + Density.ports.Density.type = "SS"; + Density.ports.Density.cr = "SS"; + Density.ports.Density.arg = "external,external"; + Density.ports.Density.repetitions = 1; + Density.ports.Density.status = -1; + Density.ports.Density.connections = [3 ]; + +# Component r + Density.subsystems.r.type = "R"; + Density.subsystems.r.cr = "Density"; + Density.subsystems.r.arg = "density,ideal_gas,r"; + Density.subsystems.r.repetitions = 1; + Density.subsystems.r.status = -1; + Density.subsystems.r.connections = [1 2 -3 ]; + +# Component mtt1 + Density.subsystems.mtt1.type = "AE"; + Density.subsystems.mtt1.cr = ""; + Density.subsystems.mtt1.arg = ""; + Density.subsystems.mtt1.repetitions = 1; + Density.subsystems.mtt1.status = -1; + Density.subsystems.mtt1.connections = [4 -1 ]; + +# Component mtt2 + Density.subsystems.mtt2.type = "AE"; + Density.subsystems.mtt2.cr = ""; + Density.subsystems.mtt2.arg = ""; + Density.subsystems.mtt2.repetitions = 1; + Density.subsystems.mtt2.status = -1; + Density.subsystems.mtt2.connections = [5 -2 ]; + +# Ordered list of Port names + Density.portlist(1,:) = "Pressure "; + Density.portlist(2,:) = "Temperature"; + Density.portlist(3,:) = "Density "; + +# Ordered list of subsystem names + Density.subsystemlist(1,:) = "r "; + Density.subsystemlist(2,:) = "mtt1"; + Density.subsystemlist(3,:) = "mtt2"; + +# Bonds + Density.bonds = [ + 1 1 + 1 1 + 1 1 + 0 0 + 0 0 + ]; + +# Aliases +# A double underscore __ represents a comma +Density.alias.P = "Pressure"; +Density.alias.out = "Density"; +Density.alias.rho = "Density"; +Density.alias.T = "Temperature"; +Density.alias.density__ideal_gas__r = "$1"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Density_cr.r Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Density_cr.r ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Density_cr.r @@ -0,0 +1,36 @@ +% Constitutive relation file for Density (Density_cr.r) +% Generated by MTT at Wed Mar 11 11:01:28 GMT 1998 + +OPERATOR Density; + +% Ideal gas +FOR ALL R,Temperature,Pressure,Nothing +LET Density(density,ideal_gas,R,effort,3, + Pressure,effort,1, + Temperature,effort,2, + Nothing,flow,3 + ) = Pressure/(R*Temperature); + +FOR ALL R,Temperature,Pressure,Nothing +LET Density(specific_volume,ideal_gas,R,effort,3, + Pressure,effort,1, + Temperature,effort,2, + Nothing,flow,3 + ) = (R*Temperature)/Pressure; + +% Incompressible +FOR ALL rho,Temperature,Pressure,Nothing +LET Density(density,incompressible,rho,effort,3, + Pressure,effort,1, + Temperature,effort,2, + Nothing,flow,3 + ) = rho; + +FOR ALL rho,Temperature,Pressure,Nothing +LET Density(specific_volume,incompressible,rho,effort,3, + Pressure,effort,1, + Temperature,effort,2, + Nothing,flow,3 + ) = 1/rho; + +END; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/In_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/In_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/In_abg.m @@ -0,0 +1,57 @@ +function [In] = In_abg +# This function is the acausal bond graph representation of In +# Generated by MTT on Thu Mar 16 10:33:58 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Hy_out + In.ports.Hy_out.type = "SS"; + In.ports.Hy_out.cr = "SS"; + In.ports.Hy_out.arg = "external,external"; + In.ports.Hy_out.repetitions = 1; + In.ports.Hy_out.status = -1; + In.ports.Hy_out.connections = [2 ]; + +# Port Th_out + In.ports.Th_out.type = "SS"; + In.ports.Th_out.cr = "SS"; + In.ports.Th_out.arg = "external,external"; + In.ports.Th_out.repetitions = 1; + In.ports.Th_out.status = -1; + In.ports.Th_out.connections = [1 ]; + +# Component Hy_in + In.subsystems.Hy_in.type = "SS"; + In.subsystems.Hy_in.cr = "SS"; + In.subsystems.Hy_in.arg = "p_1,internal"; + In.subsystems.Hy_in.repetitions = 1; + In.subsystems.Hy_in.status = -1; + In.subsystems.Hy_in.connections = [-2 ]; + +# Component Th_in + In.subsystems.Th_in.type = "SS"; + In.subsystems.Th_in.cr = "SS"; + In.subsystems.Th_in.arg = "t_1,internal"; + In.subsystems.Th_in.repetitions = 1; + In.subsystems.Th_in.status = -1; + In.subsystems.Th_in.connections = [-1 ]; + +# Ordered list of Port names + In.portlist(1,:) = "Hy_out"; + In.portlist(2,:) = "Th_out"; + +# Ordered list of subsystem names + In.subsystemlist(1,:) = "Hy_in"; + In.subsystemlist(2,:) = "Th_in"; + +# Bonds + In.bonds = [ + 1 1 + 1 1 + ]; + +# Aliases +# A double underscore __ represents a comma +In.alias.out = "Th_out,Hy_out"; +In.alias.in = "Th_out,Hy_out"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/In_desc.tex Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/In_desc.tex ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/In_desc.tex @@ -0,0 +1,14 @@ +% Verbal description for system In (In_desc.tex) +% Generated by MTT on Tue Jan 13 18:02:36 GMT 1998. + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + The acausal bond graph of system \textbf{In} is + displayed in Figure \Ref{In_abg} and its label + file is listed in Section \Ref{sec:In_lbl}. + The subsystems are listed in Section \Ref{sec:In_sub}. ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Load_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Load_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Load_abg.m @@ -0,0 +1,60 @@ +function [Load] = Load_abg +# This function is the acausal bond graph representation of Load +# Generated by MTT on Thu Mar 16 10:34:27 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port in + Load.ports.in.type = "SS"; + Load.ports.in.cr = "SS"; + Load.ports.in.arg = "external,external"; + Load.ports.in.repetitions = 1; + Load.ports.in.status = -1; + Load.ports.in.connections = [-1 ]; + +# Port out + Load.ports.out.type = "SS"; + Load.ports.out.cr = "SS"; + Load.ports.out.arg = "external,external"; + Load.ports.out.repetitions = 1; + Load.ports.out.status = -1; + Load.ports.out.connections = [3 ]; + +# Component PowerSensor + Load.subsystems.PowerSensor.type = "PS"; + Load.subsystems.PowerSensor.cr = ""; + Load.subsystems.PowerSensor.arg = ""; + Load.subsystems.PowerSensor.repetitions = 1; + Load.subsystems.PowerSensor.status = -1; + Load.subsystems.PowerSensor.connections = [1 -2 -3 ]; + +# Component r_l + Load.subsystems.r_l.type = "R"; + Load.subsystems.r_l.cr = "lin"; + Load.subsystems.r_l.arg = "flow,r_l"; + Load.subsystems.r_l.repetitions = 1; + Load.subsystems.r_l.status = -1; + Load.subsystems.r_l.connections = [2 ]; + +# Ordered list of Port names + Load.portlist(1,:) = "in "; + Load.portlist(2,:) = "out"; + +# Ordered list of subsystem names + Load.subsystemlist(1,:) = "PowerSensor"; + Load.subsystemlist(2,:) = "r_l "; + +# Bonds + Load.bonds = [ + 0 0 + 0 0 + 0 0 + ]; + +# Aliases +# A double underscore __ represents a comma +Load.alias.out = "out"; +Load.alias.r_l = "$2"; +Load.alias.in = "in"; +Load.alias.PowerSensor = "$1"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Out_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Out_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Out_abg.m @@ -0,0 +1,56 @@ +function [Out] = Out_abg +# This function is the acausal bond graph representation of Out +# Generated by MTT on Thu Mar 16 10:34:51 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Hy_in + Out.ports.Hy_in.type = "SS"; + Out.ports.Hy_in.cr = "SS"; + Out.ports.Hy_in.arg = "external,external"; + Out.ports.Hy_in.repetitions = 1; + Out.ports.Hy_in.status = -1; + Out.ports.Hy_in.connections = [-1 ]; + +# Port Th_in + Out.ports.Th_in.type = "SS"; + Out.ports.Th_in.cr = "SS"; + Out.ports.Th_in.arg = "external,external"; + Out.ports.Th_in.repetitions = 1; + Out.ports.Th_in.status = -1; + Out.ports.Th_in.connections = [-2 ]; + +# Component Hy_out + Out.subsystems.Hy_out.type = "SS"; + Out.subsystems.Hy_out.cr = "SS"; + Out.subsystems.Hy_out.arg = "p_1,internal"; + Out.subsystems.Hy_out.repetitions = 1; + Out.subsystems.Hy_out.status = -1; + Out.subsystems.Hy_out.connections = [1 ]; + +# Component Th_out + Out.subsystems.Th_out.type = "SS"; + Out.subsystems.Th_out.cr = "SS"; + Out.subsystems.Th_out.arg = "t_1,internal"; + Out.subsystems.Th_out.repetitions = 1; + Out.subsystems.Th_out.status = -1; + Out.subsystems.Th_out.connections = [2 ]; + +# Ordered list of Port names + Out.portlist(1,:) = "Hy_in"; + Out.portlist(2,:) = "Th_in"; + +# Ordered list of subsystem names + Out.subsystemlist(1,:) = "Hy_out"; + Out.subsystemlist(2,:) = "Th_out"; + +# Bonds + Out.bonds = [ + -1 -1 + -1 -1 + ]; + +# Aliases +# A double underscore __ represents a comma +Out.alias.in = "Th_in,Hy_in"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Out_desc.tex Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Out_desc.tex ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Out_desc.tex @@ -0,0 +1,14 @@ +% Verbal description for system Out (Out_desc.tex) +% Generated by MTT on Tue Jan 13 18:02:44 GMT 1998. + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + The acausal bond graph of system \textbf{Out} is + displayed in Figure \Ref{Out_abg} and its label + file is listed in Section \Ref{sec:Out_lbl}. + The subsystems are listed in Section \Ref{sec:Out_sub}. ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Poly_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Poly_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Poly_abg.m @@ -0,0 +1,122 @@ +function [Poly] = Poly_abg +# This function is the acausal bond graph representation of Poly +# Generated by MTT on Thu Mar 16 10:35:48 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Pressure_1 + Poly.ports.Pressure_1.type = "SS"; + Poly.ports.Pressure_1.cr = "SS"; + Poly.ports.Pressure_1.arg = "external,external"; + Poly.ports.Pressure_1.repetitions = 1; + Poly.ports.Pressure_1.status = -1; + Poly.ports.Pressure_1.connections = [-2 ]; + +# Port Temperature_1 + Poly.ports.Temperature_1.type = "SS"; + Poly.ports.Temperature_1.cr = "SS"; + Poly.ports.Temperature_1.arg = "external,external"; + Poly.ports.Temperature_1.repetitions = 1; + Poly.ports.Temperature_1.status = -1; + Poly.ports.Temperature_1.connections = [-6 ]; + +# Port Pressure_2 + Poly.ports.Pressure_2.type = "SS"; + Poly.ports.Pressure_2.cr = "SS"; + Poly.ports.Pressure_2.arg = "external,external"; + Poly.ports.Pressure_2.repetitions = 1; + Poly.ports.Pressure_2.status = -1; + Poly.ports.Pressure_2.connections = [-4 ]; + +# Port Temperature_2 + Poly.ports.Temperature_2.type = "SS"; + Poly.ports.Temperature_2.cr = "SS"; + Poly.ports.Temperature_2.arg = "external,external"; + Poly.ports.Temperature_2.repetitions = 1; + Poly.ports.Temperature_2.status = -1; + Poly.ports.Temperature_2.connections = [8 ]; + +# Component r + Poly.subsystems.r.type = "R"; + Poly.subsystems.r.cr = "Poly"; + Poly.subsystems.r.arg = "alpha"; + Poly.subsystems.r.repetitions = 1; + Poly.subsystems.r.status = -1; + Poly.subsystems.r.connections = [1 3 5 -7 ]; + +# Component zero + Poly.subsystems.zero.type = "SS"; + Poly.subsystems.zero.cr = "SS"; + Poly.subsystems.zero.arg = "0,0"; + Poly.subsystems.zero.repetitions = 1; + Poly.subsystems.zero.status = -1; + Poly.subsystems.zero.connections = [-9 ]; + +# Component mtt1 + Poly.subsystems.mtt1.type = "AE"; + Poly.subsystems.mtt1.cr = ""; + Poly.subsystems.mtt1.arg = ""; + Poly.subsystems.mtt1.repetitions = 1; + Poly.subsystems.mtt1.status = -1; + Poly.subsystems.mtt1.connections = [2 -1 ]; + +# Component mtt2 + Poly.subsystems.mtt2.type = "AE"; + Poly.subsystems.mtt2.cr = ""; + Poly.subsystems.mtt2.arg = ""; + Poly.subsystems.mtt2.repetitions = 1; + Poly.subsystems.mtt2.status = -1; + Poly.subsystems.mtt2.connections = [4 -3 ]; + +# Component mtt3 + Poly.subsystems.mtt3.type = "AE"; + Poly.subsystems.mtt3.cr = ""; + Poly.subsystems.mtt3.arg = ""; + Poly.subsystems.mtt3.repetitions = 1; + Poly.subsystems.mtt3.status = -1; + Poly.subsystems.mtt3.connections = [6 -5 ]; + +# Component mtt4 + Poly.subsystems.mtt4.type = "1"; + Poly.subsystems.mtt4.cr = ""; + Poly.subsystems.mtt4.arg = ""; + Poly.subsystems.mtt4.repetitions = 1; + Poly.subsystems.mtt4.status = -1; + Poly.subsystems.mtt4.connections = [7 -8 9 ]; + +# Ordered list of Port names + Poly.portlist(1,:) = "Pressure_1 "; + Poly.portlist(2,:) = "Temperature_1"; + Poly.portlist(3,:) = "Pressure_2 "; + Poly.portlist(4,:) = "Temperature_2"; + +# Ordered list of subsystem names + Poly.subsystemlist(1,:) = "r "; + Poly.subsystemlist(2,:) = "zero"; + Poly.subsystemlist(3,:) = "mtt1"; + Poly.subsystemlist(4,:) = "mtt2"; + Poly.subsystemlist(5,:) = "mtt3"; + Poly.subsystemlist(6,:) = "mtt4"; + +# Bonds + Poly.bonds = [ + 1 1 + 0 0 + 1 1 + 0 0 + 1 1 + 0 0 + 0 0 + 0 0 + 1 -1 + ]; + +# Aliases +# A double underscore __ represents a comma +Poly.alias.out = "Temperature_2"; +Poly.alias.P1 = "Pressure_1"; +Poly.alias.P2 = "Pressure_2"; +Poly.alias.T1 = "Temperature_1"; +Poly.alias.T2 = "Temperature_2"; +Poly.alias.alpha = "$1"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Poly_cr.r Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Poly_cr.r ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Poly_cr.r @@ -0,0 +1,19 @@ +% Constitutive relation file for Poly (Poly_cr.r) +% Generated by MTT at Wed Mar 11 11:01:28 GMT 1998 + +OPERATOR Poly; + +% Ideal gas + +% Temperature output on port [T2] +FOR ALL alpha,P1,P2,T1,Nothing +LET Poly(alpha,effort,4, + P1,effort,1, + P2,effort,2, + T1,effort,3, + Nothing,flow,4 + ) = T1*(P2/P1)^alpha; + + + +END; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Pump_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Pump_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/Pump_abg.m @@ -0,0 +1,180 @@ +function [Pump] = Pump_abg +# This function is the acausal bond graph representation of Pump +# Generated by MTT on Thu Mar 16 10:38:10 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Hydraulic_in + Pump.ports.Hydraulic_in.type = "SS"; + Pump.ports.Hydraulic_in.cr = "SS"; + Pump.ports.Hydraulic_in.arg = "external,external"; + Pump.ports.Hydraulic_in.repetitions = 1; + Pump.ports.Hydraulic_in.status = -1; + Pump.ports.Hydraulic_in.connections = [-5 ]; + +# Port Hydraulic_out + Pump.ports.Hydraulic_out.type = "SS"; + Pump.ports.Hydraulic_out.cr = "SS"; + Pump.ports.Hydraulic_out.arg = "external,external"; + Pump.ports.Hydraulic_out.repetitions = 1; + Pump.ports.Hydraulic_out.status = -1; + Pump.ports.Hydraulic_out.connections = [6 ]; + +# Port Shaft + Pump.ports.Shaft.type = "SS"; + Pump.ports.Shaft.cr = "SS"; + Pump.ports.Shaft.arg = "external,external"; + Pump.ports.Shaft.repetitions = 1; + Pump.ports.Shaft.status = -1; + Pump.ports.Shaft.connections = [-12 ]; + +# Port Thermal_in + Pump.ports.Thermal_in.type = "SS"; + Pump.ports.Thermal_in.cr = "SS"; + Pump.ports.Thermal_in.arg = "external,external"; + Pump.ports.Thermal_in.repetitions = 1; + Pump.ports.Thermal_in.status = -1; + Pump.ports.Thermal_in.connections = [-4 ]; + +# Port Thermal_out + Pump.ports.Thermal_out.type = "SS"; + Pump.ports.Thermal_out.cr = "SS"; + Pump.ports.Thermal_out.arg = "external,external"; + Pump.ports.Thermal_out.repetitions = 1; + Pump.ports.Thermal_out.status = -1; + Pump.ports.Thermal_out.connections = [16 ]; + +# Component pipe + Pump.subsystems.pipe.type = "wPipe"; + Pump.subsystems.pipe.cr = "none"; + Pump.subsystems.pipe.arg = "c_v;density,ideal_gas,r"; + Pump.subsystems.pipe.repetitions = 1; + Pump.subsystems.pipe.status = -1; + Pump.subsystems.pipe.connections = [3 -7 14 2 -1 ]; + +# Component poly + Pump.subsystems.poly.type = "Poly"; + Pump.subsystems.poly.cr = "Poly"; + Pump.subsystems.poly.arg = "alpha"; + Pump.subsystems.poly.repetitions = 1; + Pump.subsystems.poly.status = -1; + Pump.subsystems.poly.connections = [9 8 11 -10 ]; + +# Component T + Pump.subsystems.T.type = "SS"; + Pump.subsystems.T.cr = "SS"; + Pump.subsystems.T.arg = "external,0"; + Pump.subsystems.T.repetitions = 1; + Pump.subsystems.T.status = -1; + Pump.subsystems.T.connections = [17 ]; + +# Component k_p + Pump.subsystems.k_p.type = "TF"; + Pump.subsystems.k_p.cr = "lin"; + Pump.subsystems.k_p.arg = "flow,k_p"; + Pump.subsystems.k_p.repetitions = 1; + Pump.subsystems.k_p.status = -1; + Pump.subsystems.k_p.connections = [13 -14 ]; + +# Component mtt1 + Pump.subsystems.mtt1.type = "0"; + Pump.subsystems.mtt1.cr = ""; + Pump.subsystems.mtt1.arg = ""; + Pump.subsystems.mtt1.repetitions = 1; + Pump.subsystems.mtt1.status = -1; + Pump.subsystems.mtt1.connections = [1 10 -15 -17 ]; + +# Component mtt2 + Pump.subsystems.mtt2.type = "0"; + Pump.subsystems.mtt2.cr = ""; + Pump.subsystems.mtt2.arg = ""; + Pump.subsystems.mtt2.repetitions = 1; + Pump.subsystems.mtt2.status = -1; + Pump.subsystems.mtt2.connections = [-6 7 -11 ]; + +# Component mtt3 + Pump.subsystems.mtt3.type = "0"; + Pump.subsystems.mtt3.cr = ""; + Pump.subsystems.mtt3.arg = ""; + Pump.subsystems.mtt3.repetitions = 1; + Pump.subsystems.mtt3.status = -1; + Pump.subsystems.mtt3.connections = [-3 5 -9 ]; + +# Component mtt4 + Pump.subsystems.mtt4.type = "0"; + Pump.subsystems.mtt4.cr = ""; + Pump.subsystems.mtt4.arg = ""; + Pump.subsystems.mtt4.repetitions = 1; + Pump.subsystems.mtt4.status = -1; + Pump.subsystems.mtt4.connections = [-2 4 -8 ]; + +# Component mtt5 + Pump.subsystems.mtt5.type = "EBTF"; + Pump.subsystems.mtt5.cr = ""; + Pump.subsystems.mtt5.arg = ""; + Pump.subsystems.mtt5.repetitions = 1; + Pump.subsystems.mtt5.status = -1; + Pump.subsystems.mtt5.connections = [15 -16 ]; + +# Component mtt6 + Pump.subsystems.mtt6.type = "1"; + Pump.subsystems.mtt6.cr = ""; + Pump.subsystems.mtt6.arg = ""; + Pump.subsystems.mtt6.repetitions = 1; + Pump.subsystems.mtt6.status = -1; + Pump.subsystems.mtt6.connections = [12 -13 ]; + +# Ordered list of Port names + Pump.portlist(1,:) = "Hydraulic_in "; + Pump.portlist(2,:) = "Hydraulic_out"; + Pump.portlist(3,:) = "Shaft "; + Pump.portlist(4,:) = "Thermal_in "; + Pump.portlist(5,:) = "Thermal_out "; + +# Ordered list of subsystem names + Pump.subsystemlist(1,:) = "pipe"; + Pump.subsystemlist(2,:) = "poly"; + Pump.subsystemlist(3,:) = "T "; + Pump.subsystemlist(4,:) = "k_p "; + Pump.subsystemlist(5,:) = "mtt1"; + Pump.subsystemlist(6,:) = "mtt2"; + Pump.subsystemlist(7,:) = "mtt3"; + Pump.subsystemlist(8,:) = "mtt4"; + Pump.subsystemlist(9,:) = "mtt5"; + Pump.subsystemlist(10,:) = "mtt6"; + +# Bonds + Pump.bonds = [ + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + -1 -1 + 0 0 + 0 0 + 0 0 + 0 0 + 1 1 + ]; + +# Aliases +# A double underscore __ represents a comma +Pump.alias.out = "Thermal_out,Hydraulic_out"; +Pump.alias.Hy_out = "Hydraulic_out"; +Pump.alias.c_v = "$1"; +Pump.alias.flow__k_p = "$4"; +Pump.alias.Th_in = "Thermal_in"; +Pump.alias.Th_out = "Thermal_out"; +Pump.alias.Work = "Shaft"; +Pump.alias.alpha = "$3"; +Pump.alias.in = "Thermal_in,Hydraulic_in"; +Pump.alias.Hy_in = "Hydraulic_in"; +Pump.alias.density__ideal_gas__r = "$2"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_abg.m @@ -0,0 +1,165 @@ +function [SimpleGasTurbineABG] = SimpleGasTurbineABG_abg +# This function is the acausal bond graph representation of SimpleGasTurbineABG +# Generated by MTT on Thu Mar 16 12:59:12 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Component c1 + SimpleGasTurbineABG.subsystems.c1.type = "Comb"; + SimpleGasTurbineABG.subsystems.c1.cr = "none"; + SimpleGasTurbineABG.subsystems.c1.arg = "m_c;v_c;r"; + SimpleGasTurbineABG.subsystems.c1.repetitions = 1; + SimpleGasTurbineABG.subsystems.c1.status = -1; + SimpleGasTurbineABG.subsystems.c1.connections = [14 -15 7 10 -11 ]; + +# Component j_s + SimpleGasTurbineABG.subsystems.j_s.type = "I"; + SimpleGasTurbineABG.subsystems.j_s.cr = "lin"; + SimpleGasTurbineABG.subsystems.j_s.arg = "flow,j_s"; + SimpleGasTurbineABG.subsystems.j_s.repetitions = 1; + SimpleGasTurbineABG.subsystems.j_s.status = -1; + SimpleGasTurbineABG.subsystems.j_s.connections = [2 ]; + +# Component comp + SimpleGasTurbineABG.subsystems.comp.type = "Pump"; + SimpleGasTurbineABG.subsystems.comp.cr = "none"; + SimpleGasTurbineABG.subsystems.comp.arg = "c_v;density,ideal_gas,r;alpha;effort,k"; + SimpleGasTurbineABG.subsystems.comp.repetitions = 1; + SimpleGasTurbineABG.subsystems.comp.status = -1; + SimpleGasTurbineABG.subsystems.comp.connections = [16 -14 1 12 -10 ]; + +# Component turb + SimpleGasTurbineABG.subsystems.turb.type = "Pump"; + SimpleGasTurbineABG.subsystems.turb.cr = "none"; + SimpleGasTurbineABG.subsystems.turb.arg = "c_v;density,ideal_gas,r;alpha;effort,k"; + SimpleGasTurbineABG.subsystems.turb.repetitions = 1; + SimpleGasTurbineABG.subsystems.turb.status = -1; + SimpleGasTurbineABG.subsystems.turb.connections = [15 -17 -6 11 -13 ]; + +# Component Work + SimpleGasTurbineABG.subsystems.Work.type = "SS"; + SimpleGasTurbineABG.subsystems.Work.cr = "SS"; + SimpleGasTurbineABG.subsystems.Work.arg = "0,external"; + SimpleGasTurbineABG.subsystems.Work.repetitions = 1; + SimpleGasTurbineABG.subsystems.Work.status = -1; + SimpleGasTurbineABG.subsystems.Work.connections = [4 ]; + +# Component Heat + SimpleGasTurbineABG.subsystems.Heat.type = "SS"; + SimpleGasTurbineABG.subsystems.Heat.cr = "SS"; + SimpleGasTurbineABG.subsystems.Heat.arg = "0,external"; + SimpleGasTurbineABG.subsystems.Heat.repetitions = 1; + SimpleGasTurbineABG.subsystems.Heat.status = -1; + SimpleGasTurbineABG.subsystems.Heat.connections = [9 ]; + +# Component Speed + SimpleGasTurbineABG.subsystems.Speed.type = "SS"; + SimpleGasTurbineABG.subsystems.Speed.cr = "SS"; + SimpleGasTurbineABG.subsystems.Speed.arg = "0,external"; + SimpleGasTurbineABG.subsystems.Speed.repetitions = 1; + SimpleGasTurbineABG.subsystems.Speed.status = -1; + SimpleGasTurbineABG.subsystems.Speed.connections = [5 ]; + +# Component T3 + SimpleGasTurbineABG.subsystems.T3.type = "SS"; + SimpleGasTurbineABG.subsystems.T3.cr = "SS"; + SimpleGasTurbineABG.subsystems.T3.arg = "external,external"; + SimpleGasTurbineABG.subsystems.T3.repetitions = 1; + SimpleGasTurbineABG.subsystems.T3.status = -1; + SimpleGasTurbineABG.subsystems.T3.connections = [-8 ]; + +# Component in + SimpleGasTurbineABG.subsystems.in.type = "In"; + SimpleGasTurbineABG.subsystems.in.cr = ""; + SimpleGasTurbineABG.subsystems.in.arg = ""; + SimpleGasTurbineABG.subsystems.in.repetitions = 1; + SimpleGasTurbineABG.subsystems.in.status = -1; + SimpleGasTurbineABG.subsystems.in.connections = [-16 -12 ]; + +# Component out + SimpleGasTurbineABG.subsystems.out.type = "Out"; + SimpleGasTurbineABG.subsystems.out.cr = ""; + SimpleGasTurbineABG.subsystems.out.arg = ""; + SimpleGasTurbineABG.subsystems.out.repetitions = 1; + SimpleGasTurbineABG.subsystems.out.status = -1; + SimpleGasTurbineABG.subsystems.out.connections = [17 13 ]; + +# Component mtt1 + SimpleGasTurbineABG.subsystems.mtt1.type = "1"; + SimpleGasTurbineABG.subsystems.mtt1.cr = ""; + SimpleGasTurbineABG.subsystems.mtt1.arg = ""; + SimpleGasTurbineABG.subsystems.mtt1.repetitions = 1; + SimpleGasTurbineABG.subsystems.mtt1.status = -1; + SimpleGasTurbineABG.subsystems.mtt1.connections = [-1 -2 -3 -5 6 ]; + +# Component mtt2 + SimpleGasTurbineABG.subsystems.mtt2.type = "Load"; + SimpleGasTurbineABG.subsystems.mtt2.cr = ""; + SimpleGasTurbineABG.subsystems.mtt2.arg = ""; + SimpleGasTurbineABG.subsystems.mtt2.repetitions = 1; + SimpleGasTurbineABG.subsystems.mtt2.status = -1; + SimpleGasTurbineABG.subsystems.mtt2.connections = [3 -4 ]; + +# Component mtt3 + SimpleGasTurbineABG.subsystems.mtt3.type = "PS"; + SimpleGasTurbineABG.subsystems.mtt3.cr = ""; + SimpleGasTurbineABG.subsystems.mtt3.arg = ""; + SimpleGasTurbineABG.subsystems.mtt3.repetitions = 1; + SimpleGasTurbineABG.subsystems.mtt3.status = -1; + SimpleGasTurbineABG.subsystems.mtt3.connections = [8 -7 -9 ]; + +# Ordered list of subsystem names + SimpleGasTurbineABG.subsystemlist(1,:) = "c1 "; + SimpleGasTurbineABG.subsystemlist(2,:) = "j_s "; + SimpleGasTurbineABG.subsystemlist(3,:) = "comp "; + SimpleGasTurbineABG.subsystemlist(4,:) = "turb "; + SimpleGasTurbineABG.subsystemlist(5,:) = "Work "; + SimpleGasTurbineABG.subsystemlist(6,:) = "Heat "; + SimpleGasTurbineABG.subsystemlist(7,:) = "Speed"; + SimpleGasTurbineABG.subsystemlist(8,:) = "T3 "; + SimpleGasTurbineABG.subsystemlist(9,:) = "in "; + SimpleGasTurbineABG.subsystemlist(10,:) = "out "; + SimpleGasTurbineABG.subsystemlist(11,:) = "mtt1 "; + SimpleGasTurbineABG.subsystemlist(12,:) = "mtt2 "; + SimpleGasTurbineABG.subsystemlist(13,:) = "mtt3 "; + +# Bonds + SimpleGasTurbineABG.bonds = [ + 0 0 + 1 1 + 0 0 + -1 -1 + -1 -1 + 0 0 + 0 0 + 1 1 + -1 -1 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + ]; + +# Aliases +# A double underscore __ represents a comma +# Explicit variable declarations +#VAR t_2 +#VAR t_3 +#VAR t_4 +#VAR p_2 +#VAR p_3 +#VAR p_4 +#VAR mdot +#VAR gamma_0 +#VAR q_0 +#VAR w_0 +#VAR omega_0 +#VAR r_p +#VAR c_p +#VAR mom_0 +endfunction ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_desc.tex Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_desc.tex ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_desc.tex @@ -0,0 +1,123 @@ +% -*-latex-*- used to set EMACS into LaTeX-mode +% Verbal description for system SimpleGasTurbineABG (SimpleGasTurbineABG_desc.tex) +% Generated by MTT on Tue Jan 13 18:01:55 GMT 1998. + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %% Revision 1.1 1998/05/18 15:45:50 peterg +% %% Initial revision +% %% +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + The acausal bond graph of system \textbf{SimpleGasTurbineABG} is + displayed in Figure \Ref{SimpleGasTurbineABG_abg} and its label + file is listed in Section \Ref{sec:SimpleGasTurbineABG_lbl}. + The subsystems are listed in Section \Ref{sec:SimpleGasTurbineABG_sub}. + + \textbf{SimpleGasTurbineABG} can be regarded as an single-spool gas + turbine (producing shaft power) with an ideal-gas working fluid. It + corresponds to the simple Joule Cycle as described in Chapter 12 of + Rogers and Mayhew and in Chapter 2 of Cohen, Rogers and + Saravanamutto. However, unlike those examples, the system is + written with dynamics in mind. + + The system is described using an energy Bond Graph- this ensures + that the first law is observed. In particular transformers are used + to explicitly convert between energy covariables. Although this is + a simple model, I believe that it provides the basis for building + complex thermodynamic systems involving gas power cycles. + + +There are five main components: +\begin{enumerate} +\item p1 -- a \textbf{Pump} component representing the compressor + stage. This converts shaft work to energy flow in the working fluid. +\item c1 -- a \textbf{Comb} component representing the combustion + chamber. This converts the heat obtained by burning fuel to energy + flow in the working fluid. +\item t1 -- a \textbf{Turb} component representing the turbine + component. This converts the energy flow in the working fluid to + shaft work +\item j\_s -- an \textbf{I} component representing the combined inertia + of the shaft and compressor and turbine rotors. +\item a \textbf{Load} component to absorb the shaft power. +\end{enumerate} +The components \textbf{In} and \textbf{Out} provide the inlet and +outlet conditions. + +Both \textbf{Pump} and \textbf{Turb} are implemented with the +\emph{polytropic} constitutive relationship with index $n$. When +$n=\gamma=\frac{c_p}{c_v}$ this corresponds to isentropic compression +and expansion and thus the \textbf{SimpleGasTurbineABG} achieves its +cycle efficiency. However, other values of $n$ can be used to account +for isentropic efficiency of less than unity. + +To obtain a very simple dynamic model (and to avoid the need for an +accurate combustion chamber model) there are no dynamics associated +with the combustion chamber, but rahter it is assumed that the +corresponding temperature is imposed on the component (that is $T_3$ +is the system input) the corresponding heat flow is then an output. + +Both heat input and work output are measured using the \textbf{PS} +(power sensor) component, that for work output is embedded in the +\textbf{Load} component. These can be monitored to give the efficiency +of the \textbf{SimpleGasTurbineABG}. + +A symbolic steady-state for the model was computed -- see Section +\ref{sec:SimpleGasTurbineABG_ss.tex}. In particular, the load +resistance was chosen to absorb all the generated work at the steady +state and the shaft inertia was chosen to give a unit time constant +for the linearised system. The mass flow and shaft speeds were taken +as unity. + +For the purposed of simulation, the numerical values given in Examples +12.1 of Chapter 12 of Rogers and Mayhew, except that the isentropic +efficiencies are 100\% ($n=\gamma$) -- see Section +\ref{sec:SimpleGasTurbineABG_numpar.tex}. + +Simulations were performed starting at the steady state and increasing +the combustion chamber temperature by 10\% at $t=1$ and reducing by +10\% at $t=5$. Graphs of the various outputs are plotted: +\begin{itemize} +\item Figure + \Ref{fig:SimpleGasTurbineABG_odeso.ps-SimpleGasTurbineABG-p1-T,SimpleGasTurbineABG-c1-T,SimpleGasTurbineABG-t1-T} + -- the temperatures at the output of the + \begin{itemize} + \item compressor, + \item combustion chamber and + \item turbine + \end{itemize} +\item Figure + \Ref{fig:SimpleGasTurbineABG_odeso.ps-SimpleGasTurbineABG-Heat,SimpleGasTurbineABG-Work} + -- the heat input and work output +\item Figure + \Ref{fig:SimpleGasTurbineABG_odeso.ps-SimpleGasTurbineABG-Speed} -- the shaft speed and +\item Figure + \Ref{fig:SimpleGasTurbineABG_odeso.ps-SimpleGasTurbineABG-p1-P,SimpleGasTurbineABG-c1-P,SimpleGasTurbineABG-t1-P} + -- the pressure at the output of the + \begin{itemize} + \item compressor, + \item combustion chamber and + \item turbine + \end{itemize} +\end{itemize} + +This model can be modified extended in various ways to yield related +dynamic systems. For example: +\begin{itemize} +\item an air cooler is obtained by changing the direction of heat and + work flows +\item additional \textbf{Turb} and \textbf{Comb} components add reheat + to the cycle +\item an isentropic nozzle can be added and the work output removed + to give a jet engine. +\end{itemize} + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_input.txt Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_input.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_input.txt @@ -0,0 +1,14 @@ +# Numerical parameter file (SimpleGasTurbineABG_input.txt) +# Generated by MTT at Tue Mar 31 12:38:39 BST 1998 + +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% Version control history +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% $Id$ +# %% $Log$ +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +t_3 = 1000; + +# Set the inputs +u(1) = t_3 + 0.1*t_3*(t>1) - 0.2*t_3*(t>5); # SimpleGasTurbineABG (T3) ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_numpar.txt Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_numpar.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_numpar.txt @@ -0,0 +1,74 @@ +# Numerical parameter file (SimpleGasTurbine_numpar.txt) +# Generated by MTT at Tue Mar 31 12:15:00 BST 1998 + +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% Version control history +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% $Id$ +# %% $Log$ +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +#Dummies + alpha = 1; + c_v = 1; + density = 1; + ideal_gas = 1; + j_s = 1; + k = 1; + k_p = 1; + m = 1; + m_c = 1; + p_1 = 1; + r = 1; + r_l = 1; + t_1 = 1; + v = 1; + v_c = 1; + + +# Parameters +c_p = 1005.0; +c_v = 718.0; +gamma_0 = c_p/c_v; +alpha = (gamma_0-1)/gamma_0; +k = 1.0; +p_1 = 1e5; # 1 bar +p_4 = p_1; +r = c_p-c_v; +t_1 = 288.0; # In +v_c = 1.0; + +%Set the CC pressure and temperature +t_3 = 1000.0; +r_p = 6.0; +p_3 = r_p*p_1; + +%Find stored mass to give combustion chamber pressure p_3 (at +% temperature t_3 +m_c = (p_3*v_c)/(t_3*r); + +%Equate pressures +p_4 = p_1; +p_2 = p_3; + +%Compute ss temperatures (isentropic) +t_2 = t_1*(p_2/p_1)^alpha; +t_4 = t_3*(p_4/p_3)^alpha; + +%Find the steady-state work output +w_0 = c_p*(t_3-t_4) - c_p*(t_2-t_1); + +%Unit mass flow +mdot = 1; + +%Corresponding shaft speed +omega_0 = mdot/k; + +%Compute the corresponding load resistance (to absorb that work) +r_l = w_0/(omega_0)^2; + +%Compute shaft inertia to give unit time constant (j_s*r_l) +j_s = r_l; + +%Find angular momentum to give shaft speed omega_0 +mom_0 = omega_0*j_s; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_rep.txt Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_rep.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_rep.txt @@ -0,0 +1,32 @@ +# Outline report file for system SimpleGasTurbineABG (SimpleGasTurbineABG_rep.txt) + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%mtt -abg -o -ss SimpleGasTurbineABG abg tex +mtt -abg -o -ss SimpleGasTurbineABG struc tex +mtt -abg -o -ss SimpleGasTurbineABG sympar tex +mtt -abg -o -ss SimpleGasTurbineABG ode tex + +mtt -abg -o -ss SimpleGasTurbineABG sspar r +mtt -abg -o -ss SimpleGasTurbineABG ss tex +mtt -abg -o -ss SimpleGasTurbineABG sm tex + + +mtt -abg -o -ss SimpleGasTurbineABG numpar tex +mtt -abg -o -ss SimpleGasTurbineABG input tex +mtt -abg -o -ss SimpleGasTurbineABG state tex +mtt -abg -o -ss SimpleGasTurbineABG simpar tex +mtt -abg -o -ss -c SimpleGasTurbineABG odeso ps 'SimpleGasTurbineABG_p1_T,SimpleGasTurbineABG_c1_T,SimpleGasTurbineABG_t1_T' +mtt -abg -o -ss -c SimpleGasTurbineABG odeso ps 'SimpleGasTurbineABG_Heat,SimpleGasTurbineABG_Work' +mtt -abg -o -ss -c SimpleGasTurbineABG odeso ps 'SimpleGasTurbineABG_Speed' +mtt -abg -o -ss -c SimpleGasTurbineABG odeso ps 'SimpleGasTurbineABG_p1_P,SimpleGasTurbineABG_c1_P,SimpleGasTurbineABG_t1_P' + + + + + ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_simp.r Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_simp.r ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_simp.r @@ -0,0 +1,11 @@ +%% Reduce commands to simplify output for system SimpleGasTurbineABG (SimpleGasTurbineABG_simp.r) + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +LET c_v = c_p - r; +END; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_sspar.r Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_sspar.r ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_sspar.r @@ -0,0 +1,49 @@ +% Steady-state parameter file (SimpleGasTurbineABG_sspar.r) +% Generated by MTT at Thu Mar 26 16:28:59 GMT 1998 + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% % Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% % $Id$ +% % $Log$ +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%Find stored mass to give combustion chamber pressure p_3 (at +% temperature t_3 +m_c := (p_3*v_c)/(t_3*r); + +%Equate pressures +p_4 := p_1; +p_2 := p_3; + +%Compute ss temperatures (isentropic) +t_2 := t_1*(p_2/p_1)^alpha; +t_4 := t_3*(p_4/p_3)^alpha; + +%Find the steady-state work output +w_0 := c_p*(t_3-t_4) - c_p*(t_2-t_1); + +%Compute the corresponding load resistance (to absorb that work) +r_l := w_0/(omega_0)^2; + +%Unit mass flow +mdot := 1; + +%Corresponding shaft speed +omega_0 := mdot/k; + +%Compute shaft inertia to give unit time constant (j_s*r_l) +j_s := r_l; + +%Find angular momentum to give shaft speed omega_0 +mom_0 := omega_0*j_s; + + +% Steady-state states +MTTX1 := mom_0; + +% Steady-state inputs - combustion temperature +MTTU1 := t_3; % SimpleGasTurbineABG (T3) + +;;END; + ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_state.txt Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_state.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/SimpleGasTurbineABG_state.txt @@ -0,0 +1,14 @@ +# Numerical parameter file (SimpleGasTurbineABG_state.txt) +# Generated by MTT at Tue Mar 31 12:37:17 BST 1998 + +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% Version control history +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% $Id$ +# %% $Log$ +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +SimpleGasTurbineABG_numpar; + +# Set the states +x(1) = j_s/k ; # SimpleGasTurbineABG (j_s) ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/hPipe_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/hPipe_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/hPipe_abg.m @@ -0,0 +1,105 @@ +function [hPipe] = hPipe_abg +# This function is the acausal bond graph representation of hPipe +# Generated by MTT on Thu Mar 16 10:33:07 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Heat + hPipe.ports.Heat.type = "SS"; + hPipe.ports.Heat.cr = "SS"; + hPipe.ports.Heat.arg = "external,external"; + hPipe.ports.Heat.repetitions = 1; + hPipe.ports.Heat.status = -1; + hPipe.ports.Heat.connections = [-3 ]; + +# Port Hydraulic_in + hPipe.ports.Hydraulic_in.type = "SS"; + hPipe.ports.Hydraulic_in.cr = "SS"; + hPipe.ports.Hydraulic_in.arg = "external,external"; + hPipe.ports.Hydraulic_in.repetitions = 1; + hPipe.ports.Hydraulic_in.status = -1; + hPipe.ports.Hydraulic_in.connections = [-5 ]; + +# Port Hydraulic_out + hPipe.ports.Hydraulic_out.type = "SS"; + hPipe.ports.Hydraulic_out.cr = "SS"; + hPipe.ports.Hydraulic_out.arg = "external,external"; + hPipe.ports.Hydraulic_out.repetitions = 1; + hPipe.ports.Hydraulic_out.status = -1; + hPipe.ports.Hydraulic_out.connections = [6 ]; + +# Port Thermal_in + hPipe.ports.Thermal_in.type = "SS"; + hPipe.ports.Thermal_in.cr = "SS"; + hPipe.ports.Thermal_in.arg = "external,external"; + hPipe.ports.Thermal_in.repetitions = 1; + hPipe.ports.Thermal_in.status = -1; + hPipe.ports.Thermal_in.connections = [-2 ]; + +# Port Thermal_out + hPipe.ports.Thermal_out.type = "SS"; + hPipe.ports.Thermal_out.cr = "SS"; + hPipe.ports.Thermal_out.arg = "external,external"; + hPipe.ports.Thermal_out.repetitions = 1; + hPipe.ports.Thermal_out.status = -1; + hPipe.ports.Thermal_out.connections = [7 ]; + +# Component P2T + hPipe.subsystems.P2T.type = "TF"; + hPipe.subsystems.P2T.cr = "lin"; + hPipe.subsystems.P2T.arg = "flow,r*m/v"; + hPipe.subsystems.P2T.repetitions = 1; + hPipe.subsystems.P2T.status = -1; + hPipe.subsystems.P2T.connections = [5 -1 ]; + +# Component T2P + hPipe.subsystems.T2P.type = "TF"; + hPipe.subsystems.T2P.cr = "lin"; + hPipe.subsystems.T2P.arg = "effort,r*m/v"; + hPipe.subsystems.T2P.repetitions = 1; + hPipe.subsystems.T2P.status = -1; + hPipe.subsystems.T2P.connections = [4 -6 ]; + +# Component mtt1 + hPipe.subsystems.mtt1.type = "0"; + hPipe.subsystems.mtt1.cr = ""; + hPipe.subsystems.mtt1.arg = ""; + hPipe.subsystems.mtt1.repetitions = 1; + hPipe.subsystems.mtt1.status = -1; + hPipe.subsystems.mtt1.connections = [1 2 3 -4 -7 ]; + +# Ordered list of Port names + hPipe.portlist(1,:) = "Heat "; + hPipe.portlist(2,:) = "Hydraulic_in "; + hPipe.portlist(3,:) = "Hydraulic_out"; + hPipe.portlist(4,:) = "Thermal_in "; + hPipe.portlist(5,:) = "Thermal_out "; + +# Ordered list of subsystem names + hPipe.subsystemlist(1,:) = "P2T "; + hPipe.subsystemlist(2,:) = "T2P "; + hPipe.subsystemlist(3,:) = "mtt1"; + +# Bonds + hPipe.bonds = [ + 0 0 + 0 0 + 1 1 + 0 0 + 0 0 + 0 0 + 0 0 + ]; + +# Aliases +# A double underscore __ represents a comma +hPipe.alias.out = "Thermal_out,Hydraulic_out"; +hPipe.alias.Hy_out = "Hydraulic_out"; +hPipe.alias.Th_in = "Thermal_in"; +hPipe.alias.r = "$3"; +hPipe.alias.Th_out = "Thermal_out"; +hPipe.alias.m = "$1"; +hPipe.alias.v = "$2"; +hPipe.alias.in = "Thermal_in,Hydraulic_in"; +hPipe.alias.Hy_in = "Hydraulic_in"; ADDED mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/wPipe_abg.m Index: mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/wPipe_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/SimpleGasTurbineABG/wPipe_abg.m @@ -0,0 +1,199 @@ +function [wPipe] = wPipe_abg +# This function is the acausal bond graph representation of wPipe +# Generated by MTT on Thu Mar 16 10:37:39 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Port Hydraulic_in + wPipe.ports.Hydraulic_in.type = "SS"; + wPipe.ports.Hydraulic_in.cr = "SS"; + wPipe.ports.Hydraulic_in.arg = "external,external"; + wPipe.ports.Hydraulic_in.repetitions = 1; + wPipe.ports.Hydraulic_in.status = -1; + wPipe.ports.Hydraulic_in.connections = [-1 ]; + +# Port Hydraulic_out + wPipe.ports.Hydraulic_out.type = "SS"; + wPipe.ports.Hydraulic_out.cr = "SS"; + wPipe.ports.Hydraulic_out.arg = "external,external"; + wPipe.ports.Hydraulic_out.repetitions = 1; + wPipe.ports.Hydraulic_out.status = -1; + wPipe.ports.Hydraulic_out.connections = [17 ]; + +# Port Shaft + wPipe.ports.Shaft.type = "SS"; + wPipe.ports.Shaft.cr = "SS"; + wPipe.ports.Shaft.arg = "external,external"; + wPipe.ports.Shaft.repetitions = 1; + wPipe.ports.Shaft.status = -1; + wPipe.ports.Shaft.connections = [-20 ]; + +# Port Thermal_in + wPipe.ports.Thermal_in.type = "SS"; + wPipe.ports.Thermal_in.cr = "SS"; + wPipe.ports.Thermal_in.arg = "external,external"; + wPipe.ports.Thermal_in.repetitions = 1; + wPipe.ports.Thermal_in.status = -1; + wPipe.ports.Thermal_in.connections = [-14 ]; + +# Port Thermal_out + wPipe.ports.Thermal_out.type = "SS"; + wPipe.ports.Thermal_out.cr = "SS"; + wPipe.ports.Thermal_out.arg = "external,external"; + wPipe.ports.Thermal_out.repetitions = 1; + wPipe.ports.Thermal_out.status = -1; + wPipe.ports.Thermal_out.connections = [16 ]; + +# Component rho1 + wPipe.subsystems.rho1.type = "Density"; + wPipe.subsystems.rho1.cr = "none"; + wPipe.subsystems.rho1.arg = "density,ideal_gas,r"; + wPipe.subsystems.rho1.repetitions = 1; + wPipe.subsystems.rho1.status = -1; + wPipe.subsystems.rho1.connections = [4 3 -5 ]; + +# Component rho2 + wPipe.subsystems.rho2.type = "Density"; + wPipe.subsystems.rho2.cr = "none"; + wPipe.subsystems.rho2.arg = "density,ideal_gas,r"; + wPipe.subsystems.rho2.repetitions = 1; + wPipe.subsystems.rho2.status = -1; + wPipe.subsystems.rho2.connections = [12 11 -10 ]; + +# Component p2pv + wPipe.subsystems.p2pv.type = "EMTF"; + wPipe.subsystems.p2pv.cr = "lin"; + wPipe.subsystems.p2pv.arg = "flow"; + wPipe.subsystems.p2pv.repetitions = 1; + wPipe.subsystems.p2pv.status = -1; + wPipe.subsystems.p2pv.connections = [2 -9 5 ]; + +# Component pv2p + wPipe.subsystems.pv2p.type = "EMTF"; + wPipe.subsystems.pv2p.cr = "lin"; + wPipe.subsystems.pv2p.arg = "effort"; + wPipe.subsystems.pv2p.repetitions = 1; + wPipe.subsystems.pv2p.status = -1; + wPipe.subsystems.pv2p.connections = [7 -18 10 ]; + +# Component t2u + wPipe.subsystems.t2u.type = "TF"; + wPipe.subsystems.t2u.cr = "lin"; + wPipe.subsystems.t2u.arg = "effort,c_v"; + wPipe.subsystems.t2u.repetitions = 1; + wPipe.subsystems.t2u.status = -1; + wPipe.subsystems.t2u.connections = [15 -6 ]; + +# Component u2t + wPipe.subsystems.u2t.type = "TF"; + wPipe.subsystems.u2t.cr = "lin"; + wPipe.subsystems.u2t.arg = "flow,c_v"; + wPipe.subsystems.u2t.repetitions = 1; + wPipe.subsystems.u2t.status = -1; + wPipe.subsystems.u2t.connections = [8 -13 ]; + +# Component mtt1 + wPipe.subsystems.mtt1.type = "0"; + wPipe.subsystems.mtt1.cr = ""; + wPipe.subsystems.mtt1.arg = ""; + wPipe.subsystems.mtt1.repetitions = 1; + wPipe.subsystems.mtt1.status = -1; + wPipe.subsystems.mtt1.connections = [-3 14 -15 ]; + +# Component mtt2 + wPipe.subsystems.mtt2.type = "0"; + wPipe.subsystems.mtt2.cr = ""; + wPipe.subsystems.mtt2.arg = ""; + wPipe.subsystems.mtt2.repetitions = 1; + wPipe.subsystems.mtt2.status = -1; + wPipe.subsystems.mtt2.connections = [1 -2 -4 ]; + +# Component mtt3 + wPipe.subsystems.mtt3.type = "1"; + wPipe.subsystems.mtt3.cr = ""; + wPipe.subsystems.mtt3.arg = ""; + wPipe.subsystems.mtt3.repetitions = 1; + wPipe.subsystems.mtt3.status = -1; + wPipe.subsystems.mtt3.connections = [6 -7 -8 9 19 ]; + +# Component mtt4 + wPipe.subsystems.mtt4.type = "0"; + wPipe.subsystems.mtt4.cr = ""; + wPipe.subsystems.mtt4.arg = ""; + wPipe.subsystems.mtt4.repetitions = 1; + wPipe.subsystems.mtt4.status = -1; + wPipe.subsystems.mtt4.connections = [-11 13 -16 ]; + +# Component mtt5 + wPipe.subsystems.mtt5.type = "0"; + wPipe.subsystems.mtt5.cr = ""; + wPipe.subsystems.mtt5.arg = ""; + wPipe.subsystems.mtt5.repetitions = 1; + wPipe.subsystems.mtt5.status = -1; + wPipe.subsystems.mtt5.connections = [-12 -17 18 ]; + +# Component mtt6 + wPipe.subsystems.mtt6.type = "1"; + wPipe.subsystems.mtt6.cr = ""; + wPipe.subsystems.mtt6.arg = ""; + wPipe.subsystems.mtt6.repetitions = 1; + wPipe.subsystems.mtt6.status = -1; + wPipe.subsystems.mtt6.connections = [-19 20 ]; + +# Ordered list of Port names + wPipe.portlist(1,:) = "Hydraulic_in "; + wPipe.portlist(2,:) = "Hydraulic_out"; + wPipe.portlist(3,:) = "Shaft "; + wPipe.portlist(4,:) = "Thermal_in "; + wPipe.portlist(5,:) = "Thermal_out "; + +# Ordered list of subsystem names + wPipe.subsystemlist(1,:) = "rho1"; + wPipe.subsystemlist(2,:) = "rho2"; + wPipe.subsystemlist(3,:) = "p2pv"; + wPipe.subsystemlist(4,:) = "pv2p"; + wPipe.subsystemlist(5,:) = "t2u "; + wPipe.subsystemlist(6,:) = "u2t "; + wPipe.subsystemlist(7,:) = "mtt1"; + wPipe.subsystemlist(8,:) = "mtt2"; + wPipe.subsystemlist(9,:) = "mtt3"; + wPipe.subsystemlist(10,:) = "mtt4"; + wPipe.subsystemlist(11,:) = "mtt5"; + wPipe.subsystemlist(12,:) = "mtt6"; + +# Bonds + wPipe.bonds = [ + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + 0 0 + -1 -1 + ]; + +# Aliases +# A double underscore __ represents a comma +wPipe.alias.out = "Thermal_out,Hydraulic_out"; +wPipe.alias.Hy_out = "Hydraulic_out"; +wPipe.alias.c_v = "$1"; +wPipe.alias.Th_in = "Thermal_in"; +wPipe.alias.Th_out = "Thermal_out"; +wPipe.alias.Work = "Shaft"; +wPipe.alias.in = "Thermal_in,Hydraulic_in"; +wPipe.alias.Hy_in = "Hydraulic_in"; +wPipe.alias.density__ideal_gas__r = "$2"; ADDED mttroot/mtt/lib/examples/ABG/rcABG/rcABG_abg.m Index: mttroot/mtt/lib/examples/ABG/rcABG/rcABG_abg.m ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/rcABG/rcABG_abg.m @@ -0,0 +1,76 @@ +function [rc] = rc_abg +# This function is the acausal bond graph representation of rc +# Generated by MTT on Thu Mar 16 08:45:29 2000 +# The file is in Octave format + +# Subsystems and Ports + +# Component c + rc.subsystems.c.type = "C"; + rc.subsystems.c.cr = "lin"; + rc.subsystems.c.arg = "effort,c"; + rc.subsystems.c.repetitions = 1; + rc.subsystems.c.status = -1; + rc.subsystems.c.connections = [5 ]; + +# Component r + rc.subsystems.r.type = "R"; + rc.subsystems.r.cr = "lin"; + rc.subsystems.r.arg = "flow,r"; + rc.subsystems.r.repetitions = 1; + rc.subsystems.r.status = -1; + rc.subsystems.r.connections = [4 ]; + +# Component e1 + rc.subsystems.e1.type = "SS"; + rc.subsystems.e1.cr = "SS"; + rc.subsystems.e1.arg = "external,internal"; + rc.subsystems.e1.repetitions = 1; + rc.subsystems.e1.status = -1; + rc.subsystems.e1.connections = [-1 ]; + +# Component e2 + rc.subsystems.e2.type = "SS"; + rc.subsystems.e2.cr = "SS"; + rc.subsystems.e2.arg = "external,0"; + rc.subsystems.e2.repetitions = 1; + rc.subsystems.e2.status = -1; + rc.subsystems.e2.connections = [3 ]; + +# Component mtt1 + rc.subsystems.mtt1.type = "1"; + rc.subsystems.mtt1.cr = ""; + rc.subsystems.mtt1.arg = ""; + rc.subsystems.mtt1.repetitions = 1; + rc.subsystems.mtt1.status = -1; + rc.subsystems.mtt1.connections = [1 -2 -4 ]; + +# Component mtt2 + rc.subsystems.mtt2.type = "0"; + rc.subsystems.mtt2.cr = ""; + rc.subsystems.mtt2.arg = ""; + rc.subsystems.mtt2.repetitions = 1; + rc.subsystems.mtt2.status = -1; + rc.subsystems.mtt2.connections = [2 -3 -5 ]; + +# Ordered list of subsystem names + rc.subsystemlist(1,:) = "c "; + rc.subsystemlist(2,:) = "r "; + rc.subsystemlist(3,:) = "e1 "; + rc.subsystemlist(4,:) = "e2 "; + rc.subsystemlist(5,:) = "mtt1"; + rc.subsystemlist(6,:) = "mtt2"; + +# Bonds + rc.bonds = [ + 1 1 + 0 0 + 1 1 + 0 0 + 0 0 + ]; + +# Aliases +# A double underscore __ represents a comma +rc.alias.r = "$2"; +rc.alias.c = "$1"; ADDED mttroot/mtt/lib/examples/ABG/rcABG/rcABG_rep.txt Index: mttroot/mtt/lib/examples/ABG/rcABG/rcABG_rep.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/ABG/rcABG/rcABG_rep.txt @@ -0,0 +1,15 @@ +% %% Outline report file for system rcABG (rcABG_rep.txt) +mtt rcABG struc tex +mtt rcABG ode tex +mtt rcABG sm tex +mtt rcABG tf tex +mtt rcABG sro ps +mtt rcABG lmfr ps +mtt rcABG nyfr ps + +mtt rcABG numpar txt +mtt rcABG input txt +mtt -c rcABG odeso ps +mtt rcABG rep txt + + ADDED mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_abg.fig Index: mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_abg.fig ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_abg.fig @@ -0,0 +1,82 @@ +#FIG 3.2 +Portrait +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +6 4680 630 6570 1620 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 2 + 4725 1215 5175 1215 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 2 + 4725 1080 5175 1080 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 2 + 4950 675 4950 1080 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 2 + 4950 1215 4950 1575 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 1 0 2 + 1 1 2.00 120.00 240.00 + 6075 1530 6075 765 +4 0 1 1 0 0 20 0.0000 4 180 165 5355 1215 c\001 +4 0 1 1 0 0 20 0.0000 4 180 165 6300 1170 e\001 +4 0 1 1 0 0 20 0.0000 4 255 180 6390 1305 2\001 +-6 +1 3 0 2 1 7 1 0 -1 0.000 1 0.0000 1800 1125 162 162 1800 1125 1890 1260 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 1802 4277 2702 4277 2477 4502 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 3152 4277 4052 4277 3827 4502 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4502 4277 5402 4277 5177 4502 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 2926 4051 2926 3151 3151 3376 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4276 4051 4276 3151 4501 3376 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 2 + 2701 4276 2701 4501 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 2 + 5401 4051 5401 4276 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 2 + 5401 4276 5401 4501 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 2 + 2701 4051 2701 4276 +2 2 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 5 + 2475 585 3375 585 3375 765 2475 765 2475 585 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 2 + 1800 675 2475 675 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 2 + 1800 945 1800 675 +2 1 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 2 + 1800 1575 1800 1260 +2 1 0 2 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 2925 4500 2925 5400 3150 5175 +2 4 0 2 31 7 1 0 -1 0.000 0 0 7 0 0 5 + 6750 6075 6750 225 675 225 675 6075 6750 6075 +2 2 0 2 1 7 1 0 -1 0.000 0 0 -1 0 0 5 + 3600 585 4500 585 4500 765 3600 765 3600 585 +2 1 0 2 1 7 101 0 -1 0.000 0 0 -1 0 0 2 + 3375 675 3600 675 +2 1 0 2 1 7 101 0 -1 0.000 0 0 -1 0 0 2 + 4500 675 5850 675 +2 1 0 2 1 7 101 0 -1 0.000 0 0 -1 0 0 2 + 1755 1575 5850 1575 +2 1 0 2 4 7 100 0 -1 0.000 0 0 -1 0 0 2 + 1935 5040 2160 5265 +2 1 0 2 4 7 0 0 -1 0.000 0 0 -1 0 0 3 + 2070 5130 2706 4494 2706 4812 +4 1 -1 0 0 0 20 0.0000 4 255 180 2927 4367 1\001 +4 1 -1 0 0 0 20 0.0000 4 255 180 4277 4367 0\001 +4 1 -1 0 0 0 20 0.0000 4 255 825 5987 4367 SS:e2\001 +4 1 -1 0 0 0 20 0.0000 4 330 825 2926 2926 R:r_1\001 +4 1 -1 0 0 0 20 0.0000 4 255 495 4276 2926 C:c\001 +4 1 -1 0 0 0 20 0.0000 4 255 825 1395 4365 SS:e1\001 +4 0 1 1 0 0 20 0.0000 4 330 495 2880 450 r_1\001 +4 0 1 1 0 0 20 0.0000 4 180 165 1260 1170 e\001 +4 0 1 1 0 0 20 0.0000 4 255 180 1350 1305 1\001 +4 1 1 1 0 0 20 0.0000 4 255 1545 3600 2025 Schematic\001 +4 1 1 1 0 0 20 0.0000 4 330 1725 4860 4860 Bond graph\001 +4 1 -1 0 0 0 20 0.0000 4 330 825 3015 5715 R:r_2\001 +4 0 1 1 0 0 20 0.0000 4 330 495 3870 450 r_2\001 +4 1 -1 0 0 0 20 0.0000 4 330 1110 1755 5535 SS:loop\001 ADDED mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_desc.tex Index: mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_desc.tex ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_desc.tex @@ -0,0 +1,32 @@ +% Verbal description for system aRC (aRC_desc.tex) +% Generated by MTT on Sun Aug 24 11:03:55 BST 1997. + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %% Revision 1.1 1997/08/24 10:27:18 peterg +% %% Initial revision +% %% +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + The acausal bond graph of system \textbf{aRC} is + displayed in Figure \Ref{aRC_abg} and its label + file is listed in Section \Ref{sec:aRC_lbl}. + The subsystems are listed in Section \Ref{sec:aRC_sub}. + +The system \textbf{aRC} is the simple electrical aRC ciaRCuit shown in +Figure \Ref{aRC_abg}. It can be regarded as a single-input +single-output system with input $e_1$ and output $e_2$. + +The two resistors ($r_1$ and $r_2$) are in series; this give an +undercausal system with a corresponding algebraic loop. The loop is +broken by adding the {\bf SS} component ``loop'' to localise the +algabraic equation to choosinf the corresponding flow such that the +corresponding effort is zero. This algebraic equation appears in +Section \Ref{sec:aRC_dae.tex}. + +This loop is algbraicly solved to give the ordinary differential +equation of Section \Ref{sec:aRC_ode.tex} and the transfer function of +Section \Ref{sec:aRC_tf.tex}. ADDED mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_lbl.txt Index: mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_lbl.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_lbl.txt @@ -0,0 +1,48 @@ +%SUMMARY aRC: Simple RC circuit example with algebraic loop + +%% Label file for system aRC (aRC_lbl.txt) + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %% Revision 1.1 2000/05/20 16:03:15 peterg +% %% Initial revision +% %% +% %% Revision 1.1 1997/05/12 15:11:47 peterg +% %% Initial revision +% %% +% %% Revision 1.1 1997/04/18 13:27:54 peterg +% %% Initial revision +% %% +% %% Revision 1.1 1997/04/18 13:20:13 peterg +% %% Initial revision +% %% Revision 1.1 1996/09/10 11:37:14 peter +% %% Initial revision +% %% +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%% Each line should be of one of the following forms: +% a comment (ie starting with %) +% Component-name CR_name arg1,arg2,..argn +% blank + +% Source - effort source (e1) flow ignored +e1 SS external,internal + +% Sensor - effort sensor (e2) zero flow +e2 SS external,0 + +% R component - linear with resistance r (effort = r*flow) +r_1 lin flow,r_1 +r_2 lin flow,r_2 + +% C component - linear with capacitance c (state = c*effort) +c lin effort,c + +% Algebraic loop SS +loop SS zero,unknown + + + ADDED mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_rep.txt Index: mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_rep.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_rep.txt @@ -0,0 +1,27 @@ +## -*-octave-*- Put Emacs into octave-mode +## Outline report file for system aRC (aRC_rep.txt) +## Generated by MTT on" Fri Oct 15 14:56:13 EST 1999. + +############################################################### +## Version control history +############################################################### +## $Id$ +## $Log$ +############################################################### + +mtt aRC abg tex # The system description +mtt aRC cbg ps # The causal bond graph +## Uncomment the following lines or add others +mtt aRC struc tex # The system structure +mtt aRC dae tex # The system dae +mtt -A aRC ode tex # The system ode +## mtt aRC sspar tex # Steady-state parameters +## mtt aRC ss tex # Steady state +## mtt aRC dm tex # Descriptor matrices (of linearised system) +## mtt aRC sm tex # State matrices (of linearised system) +## mtt -A aRC tf tex # Transfer function (of linearised system) +## mtt aRC lmfr ps # log modulus of frequency response (of linearised system) +## mtt aRC simpar tex # Simulation parameters +## mtt aRC numpar tex # Numerical simulation parameters +## mtt aRC input tex # Simulation input +## mtt aRC odeso ps # Simulation output ADDED mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_sspar.r Index: mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_sspar.r ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/AlgebraicLoops/aRC/aRC_sspar.r @@ -0,0 +1,2 @@ +%% Reduce steady-state parameter file for aRC (aRC_sspar.r) cat /home/peter/mtt_new/mtt/trans/m/aRCs_header.txt +END; ADDED mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_abg.fig Index: mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_abg.fig ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_abg.fig @@ -0,0 +1,291 @@ +#FIG 3.1 +Portrait +Center +Inches +1200 2 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 4201 7186 4201 6451 4336 6631 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 4201 4801 4201 4066 4336 4246 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 4276 7201 4801 6901 4651 6901 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9901 6151 10576 6151 10426 6001 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9901 5026 10576 5026 10426 4876 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 4501 6226 5176 6226 5026 6076 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 4501 5026 5176 5026 5026 4876 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9601 5266 9601 6001 9466 5821 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9901 3901 10576 3901 10426 3751 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 4501 3901 5176 3901 5026 3751 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 5401 1876 5701 1876 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5551 1201 5551 1876 5401 1726 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 5926 1951 5926 2251 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 4051 3601 4351 3601 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 4501 1951 4501 2251 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 7351 1951 7351 2251 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 4201 3601 6751 2326 6451 2251 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 7051 2251 9526 3676 9526 3376 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5251 2101 4501 2101 4651 1951 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5926 2101 6601 2101 6451 1951 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 7351 2101 8026 2101 7876 1951 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 9376 3676 9676 3676 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 8491 11341 8491 12076 8356 11896 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5491 14941 5491 15676 5356 15496 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 5401 8401 5701 8401 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 5371 10246 5671 10246 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 5326 12076 5626 12076 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 5326 13876 5626 13876 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 5326 15676 5626 15676 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8326 15676 8626 15676 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8326 13876 8626 13876 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8326 12076 8626 12076 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8326 10276 8626 10276 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8326 8401 8626 8401 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 6901 14926 7201 14926 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 6901 13126 7201 13126 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 6901 11326 7201 11326 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 6901 9526 7201 9526 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 6901 7651 7201 7651 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 7021 14941 7021 15676 6901 15496 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 7021 13141 7021 13876 6901 13696 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 7021 11341 7021 12076 6901 11896 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 7021 9541 7021 10276 6901 10096 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 7051 7651 7051 8386 6931 8206 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9526 7501 8851 11101 8776 10951 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9526 7501 8851 12901 8776 12751 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9526 7501 8851 14701 8776 14551 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 8476 7651 8476 8386 8341 8206 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 8491 9541 8491 10276 8356 10096 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 8491 13141 8491 13876 8356 13696 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 8491 14941 8491 15676 8356 15496 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5551 7651 5551 8386 5416 8206 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5536 9496 5536 10231 5401 10051 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5491 11341 5491 12076 5356 11896 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 5491 13141 5491 13876 5356 13696 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7051 1876 7501 1501 7501 1726 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7201 7501 7801 8101 7651 8101 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7201 9301 7801 9901 7651 9901 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7201 11101 7801 11701 7651 11701 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7201 12901 7801 13501 7651 13501 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7201 14701 7801 15301 7651 15301 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 9601 4051 9601 4351 9526 4276 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 9601 4576 9601 4876 9526 4801 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 9601 6376 9601 6676 9526 6601 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 9601 7051 9601 7351 9526 7276 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4201 5476 4201 5176 4276 5251 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4201 6076 4201 5776 4276 5851 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 8178 9303 7878 9303 7953 9378 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7578 9303 7278 9303 7353 9378 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8177 9152 8177 9452 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 8178 11103 7878 11103 7953 11178 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7578 11103 7278 11103 7353 11178 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8177 10952 8177 11252 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 8178 12903 7878 12903 7953 12978 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7578 12903 7278 12903 7353 12978 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8177 12752 8177 13052 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 8178 14703 7878 14703 7953 14778 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7578 14703 7278 14703 7353 14778 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 2 + 8177 14552 8177 14852 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 6676 14701 5926 14701 6076 14851 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 6676 12901 5926 12901 6076 13051 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 6676 11101 5926 11101 6076 11251 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 6676 9301 5926 9301 6076 9451 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 6676 7501 5926 7501 6076 7651 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9526 7501 8776 7501 8971 7636 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9526 7501 8851 9301 8776 9076 +2 1 0 1 0 0 0 0 -1 0.000 0 0 0 0 0 3 + 9742 7410 10267 7110 10117 7110 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 8101 7501 7801 7501 7876 7576 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 7501 7501 7201 7501 7276 7576 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 5102 9302 4802 9302 4877 9377 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 5103 11103 4803 11103 4878 11178 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 5028 12903 4728 12903 4803 12978 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 5028 14703 4728 14703 4803 14778 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4501 9301 4201 7501 4351 7801 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 1 + 4051 7576 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 1 + 3976 7576 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 1 + 4051 7576 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4426 11101 4051 7576 4201 7801 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4426 12901 3901 7576 3976 7726 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4426 14701 3676 7501 3826 7801 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 5177 7502 4877 7502 4952 7577 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 4577 7502 4277 7502 4352 7577 +2 4 0 1 1 7 1 0 -1 0.000 0 0 7 0 0 5 + 9000 8700 9000 7050 6600 7050 6600 8700 9000 8700 +2 4 0 1 1 7 1 0 -1 0.000 0 0 7 0 0 5 + 9000 12300 9000 10650 6600 10650 6600 12300 9000 12300 +2 4 0 1 1 7 1 0 -1 0.000 0 0 7 0 0 5 + 9000 14175 9000 12525 6600 12525 6600 14175 9000 14175 +2 4 0 1 1 7 1 0 -1 0.000 0 0 7 0 0 5 + 9000 15975 9000 14325 6600 14325 6600 15975 9000 15975 +2 4 0 1 1 7 1 0 -1 0.000 0 0 7 0 0 5 + 9000 10500 9000 8850 6600 8850 6600 10500 9000 10500 +2 4 0 1 31 7 1 0 -1 0.000 0 0 7 0 0 5 + 13800 16125 300 16125 300 600 13800 600 13800 16125 +4 0 0 0 0 0 12 0.0000000 4 180 495 10276 7051 C:apc2\001 +4 0 0 0 0 0 12 0.0000000 4 180 510 4876 7051 C:vpc2\001 +4 0 0 0 0 0 12 0.0000000 4 180 495 10651 5101 C:apc1\001 +4 0 0 0 0 0 12 0.0000000 4 180 480 10651 6226 R:apr2\001 +4 0 0 0 0 0 12 0.0000000 4 180 480 10651 4051 R:apr1\001 +4 0 0 0 0 0 12 0.0000000 4 180 510 5251 5101 C:vpc1\001 +4 0 0 0 0 0 12 0.0000000 4 180 495 5251 6301 R:vpr2\001 +4 1 0 0 0 0 12 0.0000000 4 180 495 5551 3976 R:vpr1\001 +4 1 0 0 0 0 12 0.0000000 4 180 390 9601 6301 1:ap3\001 +4 1 0 0 0 0 12 0.0000000 4 180 405 4201 6301 1:vp3\001 +4 1 0 0 0 0 12 0.0000000 4 180 390 9601 5101 0:ap2\001 +4 1 0 0 0 0 12 0.0000000 4 180 405 4126 5101 0:vp2\001 +4 1 0 0 0 0 12 0.0000000 4 180 390 9526 3976 1:ap1\001 +4 1 0 0 0 0 12 0.0000000 4 180 405 4126 3976 1:vp1\001 +4 0 0 0 0 0 12 0.0000000 4 180 420 7576 1576 SS:ye\001 +4 0 0 0 0 0 12 0.0000000 4 135 390 5326 1201 SS:t0\001 +4 1 0 0 0 0 12 0.0000000 4 135 270 4201 2176 R:ri\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 5551 2176 1:fi\001 +4 1 0 0 0 0 12 0.0000000 4 135 225 7051 2176 0:ti\001 +4 1 0 0 0 0 12 0.0000000 4 135 285 8401 2176 C:ci\001 +4 0 0 0 0 0 12 0.0000000 4 135 345 8251 14776 1:fsa\001 +4 0 0 0 0 0 12 0.0000000 4 135 330 8251 12976 1:ffa\001 +4 0 0 0 0 0 12 0.0000000 4 135 315 8251 11176 1:fla\001 +4 0 0 0 0 0 12 0.0000000 4 135 360 8251 9376 1:fva\001 +4 0 0 0 0 0 12 0.0000000 4 135 360 8251 7576 1:fba\001 +4 0 0 0 0 0 12 0.0000000 4 135 360 5251 14776 1:fsv\001 +4 0 0 0 0 0 12 0.0000000 4 135 345 5251 12976 1:ffv\001 +4 0 0 0 0 0 12 0.0000000 4 135 330 5251 11176 1:flv\001 +4 0 0 0 0 0 12 0.0000000 4 135 375 5251 9376 1:fvv\001 +4 0 0 0 0 0 12 0.0000000 4 180 345 9601 7576 0:tap\001 +4 1 0 0 0 0 12 0.0000000 4 135 390 5476 15901 R:rs1\001 +4 1 0 0 0 0 12 0.0000000 4 135 405 5551 10501 R:rv1\001 +4 1 0 0 0 0 12 0.0000000 4 135 405 5551 8626 R:rb1\001 +4 0 0 0 0 0 12 0.0000000 4 180 420 7501 15601 SS:ys\001 +4 0 0 0 0 0 12 0.0000000 4 180 405 7501 13801 SS:yf\001 +4 1 0 0 0 0 12 0.0000000 4 180 390 7726 12001 SS:yl\001 +4 1 0 0 0 0 12 0.0000000 4 180 435 7801 10201 SS:yv\001 +4 1 0 0 0 0 12 0.0000000 4 180 435 7801 8326 SS:yb\001 +4 1 0 0 0 0 12 0.0000000 4 135 390 8476 15901 R:rs2\001 +4 1 0 0 0 0 12 0.0000000 4 135 405 8476 10501 R:rv2\001 +4 1 0 0 0 0 12 0.0000000 4 135 405 8476 8626 R:rb2\001 +4 1 0 0 0 0 12 0.0000000 4 135 315 6976 15901 C:cs\001 +4 1 0 0 0 0 12 0.0000000 4 135 300 7051 14101 C:cf\001 +4 1 0 0 0 0 12 0.0000000 4 135 285 6976 12376 C:cl\001 +4 1 0 0 0 0 12 0.0000000 4 135 330 6976 10501 C:cv\001 +4 1 0 0 0 0 12 0.0000000 4 135 330 7051 8626 C:cb\001 +4 1 0 0 0 0 12 0.0000000 4 135 255 7051 14776 0:ts\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 7051 12976 0:tf\001 +4 1 0 0 0 0 12 0.0000000 4 135 225 7051 11176 0:tl\001 +4 1 0 0 0 0 12 0.0000000 4 135 270 7051 9376 0:tv\001 +4 1 0 0 0 0 12 0.0000000 4 135 270 7051 7576 0:tb\001 +4 1 0 0 0 0 12 0.0000000 4 135 360 8476 12376 R:rl1\001 +4 1 0 0 0 0 12 0.0000000 4 135 375 8476 14101 R:rf1\001 +4 1 0 0 0 0 12 0.0000000 4 135 360 5476 12376 R:rl2\001 +4 1 0 0 0 0 12 0.0000000 4 135 375 5476 14101 R:rf2\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 9601 4501 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 9601 6901 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 4201 5701 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 7728 9378 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 7728 11178 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 7728 12978 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 7728 14778 AF\001 +4 0 0 0 0 0 12 0.0000000 4 135 375 5251 7576 1:fbv\001 +4 2 0 0 0 0 12 0.0000000 4 180 360 4126 7501 0:tvp\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 7651 7576 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 4652 9377 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 4653 11178 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 4578 12978 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 4578 14778 AF\001 +4 1 0 0 0 0 12 0.0000000 4 135 240 4727 7577 AF\001 ADDED mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_desc.tex Index: mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_desc.tex ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_desc.tex @@ -0,0 +1,26 @@ +% Verbal description for system MaplesonModelP (MaplesonModelP_desc.tex) +% Generated by MTT on Wed Dec 10 09:04:14 GMT 1997. + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + The acausal bond graph of system \textbf{MaplesonModelP} is + displayed in Figure \Ref{MaplesonModelP_abg} and its label + file is listed in Section \Ref{sec:MaplesonModelP_lbl}. + The subsystems are listed in Section \Ref{sec:MaplesonModelP_sub}. + +This is a Bond Graph interpretation of Mapleson's model P of the +pharmokokinetics of anaesthetic drug delivery. It is discussed in +detail in Chapter 9 of ``Metamodelling''. + +It badly needs conversion to hierarchical form. + + +%%% Local Variables: +%%% mode: plain-tex +%%% TeX-master: t +%%% End: ADDED mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_input.txt Index: mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_input.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_input.txt @@ -0,0 +1,9 @@ +## -*-octave-*- Put Emacs into octave-mode ## + +## +## System MaplesonModelP, representation input, language txt; +## File MaplesonModelP_input.txt; +## Generated by MTT on Fri Nov 10 10:45:52 GMT 2000; + + +MaplesonModelP_t0 = 0.75*760*(t<2); #75% atmospheric pressure for 2 sec. ADDED mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_lbl.txt Index: mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_lbl.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_lbl.txt @@ -0,0 +1,167 @@ +#SUMMARY MaplesonModelP: Pharmokinetic model from section 9.6 of"Metamodelling" +#DESCRIPTION Detailed model with pools +#DESCRIPTION +#DESCRIPTION Note that the bond graph has been redrawn to replace active bonds with +#DESCRIPTION AF components. +#DESCRIPTION This would be much neater using a heirachical model. +#DESCRIPTION +#DESCRIPTION The following commands make the figures. +#DESCRIPTION +#DESCRIPTION Fig 9.17 mtt MaplesonModelP abg view +#DESCRIPTION Figs 9.18-19 mtt MaplesonModelP odeso view 'T=[0:0.1:6]' +#DESCRIPTION Fig 9.20 mtt MaplesonModelP lmfr view 'W=logspace(-2,2,100)' +#DESCRIPTION Fig 9.21 mtt MaplesonModelP lpfr view 'W=logspace(-2,2,100)' + + +# ############################################################### +# ## Version control history +# ############################################################### +# ## $Id$ +# ## $Log$ +# ## Revision 1.1 1996/08/30 18:37:56 peter +# ## Initial revision +# ## +# ############################################################### + +#VAR apools +#VAR breathing_interval +#VAR heart_interval +#VAR k_ap +#VAR k_b +#VAR k_f +#VAR k_i +#VAR k_l +#VAR k_s +#VAR k_v +#VAR k_vp +#VAR kb +#VAR kf +#VAR kl +#VAR ks +#VAR kv +#VAR lambdab +#VAR lambdablood +#VAR lambdaf +#VAR lambdal +#VAR lambdalung +#VAR lambdav +#VAR stroke_volume +#VAR t_1 +#VAR t_2 +#VAR t_b +#VAR t_f +#VAR t_i +#VAR t_l +#VAR t_s +#VAR t_v +#VAR v_i +#VAR vap +#VAR varterial +#VAR vb +#VAR vbp +#VAR vf +#VAR vfp +#VAR vgas +#VAR vl +#VAR vlp +#VAR vlung +#VAR vplung +#VAR vpools +#VAR vsp +#VAR vv +#VAR vvenous +#VAR vvp + +### Common tension junctions ### +ti +tb +tv +tl +tf +ts +tap +tvp + +##Common flow junctions - inspiration ### +fi + +##Common flow junctions - arteries ### +fba +fva +fla +ffa +fsa + +##Common flow junctions - veins ### +fbv +fvv +flv +ffv +fsv + +## More junctions +ap3 +vp3 +ap2 +vp2 +ap1 +vp1 + +### Resistances ### +rb1 lin flow,r_b +rv1 lin flow,r_v +rl1 lin flow,r_l +rf1 lin flow,r_f +rs1 lin flow,r_s + +rb2 lin flow,r_b +rv2 lin flow,r_v +rl2 lin flow,r_l +rf2 lin flow,r_f +rs2 lin flow,r_s + +ri lin flow,r_i + +## Capacities ### +cb lin effort,c_b +cv lin effort,c_v +cl lin effort,c_l +cf lin effort,c_f +cs lin effort,c_s +ci lin effort,c_i + + +### Input ### +t0 SS external,internal + +### Outputs ### +yb SS external,0 +yv SS external,0 +yl SS external,0 +yf SS external,0 +ys SS external,0 +ye SS external,0 + +### Arterial pool +# ap1 apool1 +# ap2 apool2 +# ap3 apool3 + +apc1 lin effort,c_ap +apc2 lin effort,c_ap + +apr1 lin flow,r_ap +apr2 lin flow,r_ap + + +### Venous pool +# vp1 vpool1 +# vp2 vpool2 +# vp3 vpool3 + +vpc1 lin effort,c_vp +vpc2 lin effort,c_vp +vpr1 lin flow,r_vp +vpr2 lin flow,r_vp + + ADDED mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_numpar.txt Index: mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_numpar.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_numpar.txt @@ -0,0 +1,125 @@ +# Numerical parameter file (MaplesonModelP_numpar.txt) +# Generated by MTT at Mon Aug 11 14:45:13 BST 1997 + +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% Version control history +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +# %% $Id$ +# %% $Log$ +# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +# Parameters + +# Modified 17/11/93 to correspond to Mapleson's 1973 paper. +# Like model O except that blood has its own pools distinct form the tissues. + + +Heart_interval = 1.0/60.0; +Breathing_interval = 4*Heart_interval; +Stroke_volume = 0.108; +lambdaBlood = 0.46; +vArterial = 1.4; +vVenous = 4.0; + +# %%%%%%%%%%%%%%%%%% Inspiration %%%%%%%%%%%%%%%%%%%%%%%%%%% +v_i = 0.4; +r_i = Breathing_interval/v_i; + +# %%%%%%%%%%%%%%%%%% Lung %%%%%%%%%%%%%%%%%%%%%%%%%%% +vLung = 0.6; +vPLung = 0; +vGas = 2.5; +lambdaLung = 0.46; + +c_i = lambdaLung*(vLung + vPLung) + vGas; +t_i = r_i*c_i; +# %%%%%%%%%%%%%%%%%% Brain %%%%%%%%%%%%%%%%%%%%%%%%%%% +kB = 0.000086; + +vB = 0.0007; +vBP = 0.0; + +lambdaB = 0.46; + +c_b = lambdaB*vB + lambdaBlood*vBP; +r_b = Heart_interval/(kB*lambdaBlood*Stroke_volume); +t_b = r_b*c_b; + +# %%%%%%%%%%%%%%%%%% Viscera %%%%%%%%%%%%%%%%%%%%%%%%%%% +kV = 0.63; + +vV = 6.2; +lambdaV = 0.46; +vVP = 0; + +c_v = lambdaV*vV + lambdaBlood*vVP; +r_v = Heart_interval/(kV*lambdaBlood*Stroke_volume); +t_v = r_v*c_v; + +# %%%%%%%%%%%%%%%%%% Lean %%%%%%%%%%%%%%%%%%%%%%%%%%% +kL = 0.131; + +vL = 39.2; +lambdaL = 0.46; +vLP = 0; + +c_l = lambdaL*vL + lambdaBlood*vLP; +r_l = Heart_interval/(kL*lambdaBlood*Stroke_volume); +t_l = r_l*c_l; + +# %%%%%%%%%%%%%%%%%% Fat %%%%%%%%%%%%%%%%%%%%%%%%%%% +kF = 0.04; + +vF = 12.2; +lambdaF = 1.40; +vFP = 0; + +c_f = lambdaF*vF + lambdaBlood*(vFP); +r_f = Heart_interval/(kF*lambdaBlood*Stroke_volume); +t_f = r_f*c_f; + +# %%%%%%%%%%%%%%%%%% Shunt %%%%%%%%%%%%%%%%%%%%%%%%%%% +kS = 0.199; + +vSP = 0.126*vVenous; + +c_s = lambdaBlood*(vSP); +r_s = Heart_interval/(kS*lambdaBlood*Stroke_volume); +t_s = r_s*c_s; + +# %%%%%%%%%%%%%%%%%% Time constants %%%%%%%%%%%%%%%%%%%%%%%%%%% +t_1 = t_b*t_v*t_l*t_f*t_s; +t_2 = t_1*t_i; + + +# %%%%%%%%%%%%%%%%%% Convert from rs to ks %%%%%%%%%%%%%%%%%%%% + +k_b = 1/r_b; +k_v = 1/r_v; +k_l = 1/r_l; +k_f = 1/r_f; +k_s = 1/r_s; +k_i = 1/r_i; + +# %%%%%%%%%%%%%%%%%% Arterial pools %%%%%%%%%%%%%%%%%%%%%%%%%%% +# Two pool version +aPools = 2; + +vAP = vArterial; + +c_ap = lambdaBlood*(vAP)/aPools; +r_ap = Heart_interval/(lambdaBlood*Stroke_volume); + +# %%%%%%%%%%%%%%%%%% Venous pools %%%%%%%%%%%%%%%%%%%%%%%%%%% +# Two pool version +vPools = 2; + +vVP = vVenous - vSP; + +c_vp = lambdaBlood*(vVP)/vPools; +r_vp = Heart_interval/(lambdaBlood*Stroke_volume); + +k_ap = 1/r_ap; +k_vp = 1/r_vp; + + ADDED mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_rep.txt Index: mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_rep.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_rep.txt @@ -0,0 +1,25 @@ +# Outline report file for system MaplesonModelP (MaplesonModelP_rep.txt) + +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% Version control history +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% %% $Id$ +% %% $Log$ +% %% Revision 1.2 1999/02/17 01:46:48 peterg +% %% Included simpar rep. +% %% +% %% Revision 1.1 1999/02/17 00:08:06 peterg +% %% Initial revision +% %% +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +mtt MaplesonModelP abg tex +mtt MaplesonModelP struc tex +mtt MaplesonModelP ode tex +mtt MaplesonModelP sm tex +mtt MaplesonModelP lmfr ps + +mtt MaplesonModelP simpar txt +mtt MaplesonModelP numpar txt +mtt MaplesonModelP input txt +mtt MaplesonModelP odeso ps ADDED mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_simpar.txt Index: mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_simpar.txt ================================================================== --- /dev/null +++ mttroot/mtt/lib/examples/Anaesthesia/MaplesonModelP/MaplesonModelP_simpar.txt @@ -0,0 +1,19 @@ +# -*-octave-*- Put Emacs into octave-mode +# Simulation parameters for system MaplesonModelP (MaplesonModelP_simpar.txt) +# Generated by MTT on Fri Nov 10 11:37:00 GMT 2000. +############################################################### +## Version control history +############################################################### +## $Id$ +## $Log$ +############################################################### + + +FIRST = 0.0; # First time in simulation output +DT = 0.1; # Print interval +LAST = 10.0; # Last time in simulation +STEPFACTOR = 10; # Integration steps per print interval +WMIN = -1; # Minimum frequency = 10^WMIN +WMAX = 2; # Maximum frequency = 10^WMAX +WSTEPS = 100; # Number of frequency steps +INPUT = 1; # Index of the input