Forbes T. Brown


Email: ftb0@lehigh.edu
Phone: (610) 865-4137
Fax: (610) 758-6224

Professor Emeritus
Department of Mechanical Engineering and Mechanics

Became Professor emeritus on September 1, 2004

Key Recent Publications:

Engineering System Dynamics, A Unified Graph-Centered Approach, Second Edition (1078 pages) and Instructor's Manual (215 pages), CRC Press, 2007

"Simulation Software for Thermodynamic Models, Part 1" and "Part 2", Proceedings, International Conference on Bond Graph Modeling and Simulation, ed F.E. Cellier and J.J. Granda, The Society for Modeling and Simulation International (SCS), April, 2010, pp. 54-68

"Bond-Graph Based Simulation of Thermodynamic Models," Technical Brief in Journal of Dynamic Systems, Measurement and Control, ASME Transactions, vol 132, iss. 6, November, 2010.

Simulation Package for Convection Bond Graphs (revised June 2012)

Before December 2007 it was necessary for one to write his or her own differential equations to carry out a dynamic simulation of a thermodynamic system, using the bond graph as the principal guide.  Thereafter, the equations have been deduced and the simulation carried out automatically.  Revisions to the original software package have been made in three backward-compatible stages, in January-February 2010, October 2010 and June 2012.  The two papers cited above (not the book) describe the situation as of the first update. 

The June 2012 upgrades concern mostly the main MATLAB® function file convec.m and a new companion subprogram IRSAC.m.   The critical file convRS.m also is included; it was supposed to have replaced the old file convecRS.m earlier.  A minor deletion has been made to convectemplate.m, and some additional example models are given.  The thermodynamic portion of convec.m has undergone a major restructuring, rendering it more robust, more efficient and better annotated, and correcting certain flaws. The author would appreciate learning of any difficulties software users may encounter.

The relevant operational and several example system files are listed below.  The example of pistcyl.m is changed to make it correspond precisely to the version in the 2010 paper.  The example of shocktube.m, used to illustrate to illustrate the handling of IRS and AC elements, is quite complicated, so the simpler examples testIRS1.m, test IRS2.m and test IRS3.m are included for this purpose, although they are not discussed.   All files may be freely downloaded by clicking on there names (in red), and then run by anyone who has the required MATLAB software.

The first release of convec.m nicely handled the tested systems, but had an uncertain ability to address very complex systems.  There was no explicit understanding of its limitations, and the annotation was too limited to permit a curious user to probe its methods deeply.  The new release expands the range of allowable models.  It is based largely on a new matrix JS which identifies 12 different possible statuses of each three-port flow 0S-junction (potentially irreversible 0-junction) involving convection bonds.  It identifies, for example, whether at each moment in time the junction is diverging (reversible) or merging (irreversible), whether any of its bonds have zero flow, and whether the junction is “primary” or “subsidiary”.  The user need not bother with these matters unless he or she wishes to get into the nitty-gritty of how they work, in which case considerable annotation is offered.  A new vector (bs) also is employed to identify the status of bonds, and the evaluation of terms dealing with fluid inertance (the elements IRS and AC) is consigned to a sub-program (IRSAC.m) to preclude repetition in convec.m.  The first release addressed its tendency to become unstable in its handling of area-change (AC) elements by employing a temporal filter on the state variables for momentum, despite the complication and modest distortion that it introduced.  The new release dispenses with this filter altogether (resulting in the deletion in the template for the master program for a system, convectemplate.m).  The new release is backward-compatible, except master programs for systems with fluid kinetic energy storage must drop any initial values for the filter variables.  It also employs the maximum convergence rate for all but one of its dozen Newton-Raphson iterations, saving time; the first system had to slow down in more places to insure convergence.  The primary exception is when a fluid transits the line between vapor state and mixed liquid-vapor state.  Here, the convergence is purposefully slowed to minimize the risk of non-convergence, increasing overall reliability.  Finally, the treatment of the minor momentum flux forces in IRS elements has been simplified and corrected, but the requisite data for viscosity is available thus far only for the refrigerant R12.  The thermodynamic properties of this and 35 other substances are given in data files also listed below.

A further major expansion of the simulation package, dealing with hydraulic systems, is expected to be uploaded by perhaps October.

The procedure one follows to construct a bond graph and implement it with the software package is described in a special file; to download it, click on its name below (in red).  It also discusses other new features in the non-thermodynamic portion of the program, including the use of activated bonds, greater facility for treating nonlinearities and the use of symbolic mathematics to facilitate energy-based modeling.

Click here for Instructions and Explanation of the Simulation Package for Convection Bond Graphs

This text file refers to the following MATLAB® files, which you may download by clicking on their respective names:

File name Description Date
convec.m Function file for generating differential equations June 2012
IRSAC.m Script file to accompany convec.m; for IRS, AC elements June 2012
convectemplate.m Template for master script file for simulation June 2012
convecRS.m Function file for computing flow through restriction June 2012
pistcyl.m Master script file for piston-cylinder compressor June 2012
DCmotor.m Master script file for simple non-thermodynamic system Oct. 2010
catapult.m Master script file for steam catapult of aircraft Oct. 2010
refrig.m Master script file for refrigeration system Oct. 2010
Comptank.m Master script file for compressor with tank Oct. 2010
rootsb.m Master script file for roots blower Oct. 2010
rockdrill.m Master script file for rock drill Oct. 2010
shocktube.m Master script file for shock tube Oct. 2010
GEM.m Ground effect machine, with nonlinearities Oct. 2010
DCmotors.m Elaboration of DCmotor.m adding backlash, activated bonds Oct. 2010
solenoid.m Solenoid model using separate compliances Oct. 2010
solenoids.m Solenoid model using 2-port compliance field Oct. 2010
EMbalance.m Electromechanical balance using 4-port compliance field Oct. 2010
testIRS1.m Simple cascade emphasizing IRS, AC and RS elements June 2012
testIRS2.m Simple model with 0S and IRS elements June 2012
testIRS3.m Simple model with 0S, IRS and AC elements June 2012


As a prerequisite for using this package, the user must also download at least convec.m and convRS.m above, and the relevant files from the Thermodynamics Properties Package, which are listed subsequently below.    This includes at a minimum the updated file therprop.m, the relevant data file and the relevant vapor file as called by therprop.mIRSAC.m also must be included unless you remove the two calls to it in convec.m.  The revised file airmix.m (#12 in the list below), which treats wet air as a mixture of nitrogen, oxygen, argon and water, is needed if you wish to use air as the working fluid.  Note the listed dates, and make sure you have the latest version of each needed file.  The old file orificenew.m is abandoned.

Thermodynamic Properties Sub-Package (Revised January 2010)

The user of the full Simulation Package must download whatever files in the table below that are relevant to his intended simulation, but since these files are called automatically he need not understand their structure or stand-alone use.  The MATLAB® data files and associated programs efficiently and accurately compute 18 thermodynamic properties, and 16 more if needed, presently of 35 different substances, given the temperature and the specific volume.  The vapor and saturated liquid/vapor mixture regions are included for all the substances.   The compressed liquid region is included for most of the substances, but not the refrigerants and the metals.  In these cases the bulk modulus model (pp. 914-915) is substituted automatically.  The package simplifies the writing of equations for dynamic simulation, particularly those based on convection bond graphs.  It also is intended to replace the following downloadable files listed in the book and below: R12data.m, R134adata.m, refprop.m, vapphase.m, waterdat.m, propwat.m, steam.m, orifice.m  and orificec.m

The files are listed below, and can be downloaded individually by clicking on the file name.  More files may be added at a later date, for example for certain modern refrigerants. 

 
Date entered
File name
Function
1.
Feb. 2010
therprop.m
Called by user to compute properties
2.
Feb. 2010
vapor1.m
Called automatically by therprop.m
3.
Feb. 2010
vapor2.m
Called automatically by therprop.m
4.
Nov. 2007
vapor3.m
Called automatically by therprop.m
5.
Nov. 2007
vapor4.m
Called automatically by therprop.m
6.
Feb. 2010
vapor5.m
Called automatically by therprop.m
7.
Feb. 2010
vapor6.m
Called automatically by therprop.m
8.
Feb. 2010
vapor7.m
Called automatically by therprop.m
9.
Feb. 2010
vapor8.m
Called automatically by therprop.m
10.
Feb. 2007
satvapor.m
Run to get the coefficients E1, E2, . .
11.
Feb. 2007
pressure.m
Called by satvapor.m
12.
Oct. 2010
airmix.m
Wet air as a mixture of substances
13.
Feb. 2010
datammonia.m
Data file for ammonia
14.
Feb. 2010
datargon.m
Data file for argon
15.
Feb. 2007
datbutane.m
Data file for butane
16.
Feb. 2010
datcarbondioxide.m
Data file for carbon dioxide
17.
Feb. 2007
datcesium.m
Data file for cesium
18.
Feb. 2007
datethane.m
Data file for ethane
19.
Feb. 2007
datethylene.m
Data file for ethylene
20.
Feb. 2007
dathelium.m
Data file for helium-4
21.
Feb. 2007
dathelium2.m
Automatically called when needed
22.
Feb. 2007
dathelium3.m
Automatically called when needed
23.
Feb. 2007
datheptane.m
Data file for heptane
24.
Feb. 2007
dathexane.m
Data file for hexane
25.
Feb. 2007
dathydrogen.m
Data file for hydrogen (para)
26.
Feb. 2007
datisobutane.m
Data file for isobutene
27.
Feb. 2007
datisopentane.m
Data file for isopentane
28.
Feb. 2007
datlithium.m
Data file for lithium
29.
Feb. 2007
datmercury.m
Data file for mercury
30.
Feb. 2007
datmethane.m
Data file for methane
31.
Feb. 2007
datneon.m
Data file for neon
32.
Feb. 2010
datnitrogen.m
Data file for nitrogen
33.
Feb. 2007
datoctane.m
Data file for octane
34.
Feb. 2007
datoxygen.m
Data file for oxygen
35
Feb. 2007
datpentane.m
Data file for pentane
36.
Feb. 2007
datpotassium.m
Data file for potassium
37.
Feb. 2007
datpropane.m
Data file for propane
38.
Feb. 2010
datpropylalcohol.m
Data file for propyl alcohol
39.
Feb. 2007
datpropylene.m
Data file for propylene
40.
Feb. 2010
datR12.m
Data file for refrigerant R12
41.
Feb. 2010
datR13.m
Data file for refrigerant R13
42.
Feb. 2010
datR22.m
Data file for refrigerant R22
43.
Feb. 2010
datR23.m
Data file for refrigerant R23
44.
Feb. 2010
datR134a.m
Data file for refrigerant R134a
45.
Feb. 2010
datR502.m
Data file for refrigerant R502
46.
Feb. 2007
dat503.m
Date file for refrigerant R503
47.
Feb. 2007
datrubidium.m
Data file for rubidium
48.
Feb. 2007
datsodium.m
Data file for sodium
49.
Feb. 2010
datwater.m
Data file for water

 

The Thermodynamics Properties Sub-Package also may be used by itself, without the full Simulation Package.  One use is to determine thermodynamic properties without the context of simulation, another is to perform simulation from one’s own set of differential equations.  The following downloadable file indicates how to do these things, and also presents more detail regarding the properties that the sub-package determines.

Click here for Explanation and Special Use of the Thermodynamic Properties Sub-Package  (revised January 2010)

Click here for Errata for Second Edition 

Downloadable files cited in Edition 2

Any of the following MATLAB® files as listed on p. 1018 in the book may be downloaded by clicking on its file name in the table below.  Several other files regarding assignable problems are listed in the Instructor's manual.

Location page file name subject of file
Chap. 9 665 hysteresism.m simulation of hysteresis given h(t)
665 hysteresis.m function file called by hysteresism.m
665 Langevin Langevin function (for nonlinear magnetics)
668 coilm.m for simulation of hysteresis given voltage
668 coil.m function file called by coilm.m
674 ex9_17m.m tooth field and force vs. position
674 ex9_17de.m function file called by ex9_17m.m
674 force.m script file to follow ex9_17m.m
676 GP9_12m.m simulation of relay closing
676 GP9_12.m function file called by GP9_12m.m
684 ex9_18.m function file for synchronous motor
687 ex9_19.m function file for induction motor
Chap. 10 799 viscoustube.m quasi method of characteristics for viscous flow
804 GP10_9.m quasi method of charac. for linear elastic solid
Chap. 11 903 ex11_5m.m air compressor charging tank
903 ex11_5.m function file called by ex11_5m.m
908 ex11_6.m coefficients for saturated vapor density
909 ex11_6P.m script file called by ex11_6.m
911 refgmst.m simulation of refrigeration cycle
911 refrgde.m function file called by refgmst.m
917 shocktubem.m simulation of adiabatic tube with refrigerant
918 shocktube.m function file called by shocktubem.m
922 condenserm.m simulation of refrigerant tube w. condensation
922 condenser.m function file called by condenserm.m
923 shocktubess.m equilibrium state vector for Problem 11.18
923 condenserss.m equilibrium state vector for Problem 11.20
928 GP11_4m.m simulation of air compressor cycles
928 GP11_4.m function file called by GP11_4m.m
Appen. D 902 gas.m evaluates the properties of an ideal gas
902 air.m properties of air as mixture of gases
902 gasdata.m parameters for nitrogen, oxygen and argon
902 specheat.m specific heat of air as mixture of gases
906 R12data.m gives parameters describing refrigerant R12
906 R134adata.m gives parameters describing refrigerant R134a
906 refprop.m evaluates many properties of refrigerants
906 vapphase.m called by refprop.m
907 waterdat.m parameters defining a model of water
907 propwat.m evaluates the properties of multiphase water
907 steam.m evaluates the properties of water vapor
912 orifice.m flow of a possibly multiphase fluid through orifice


Upgraded or new MATLAB® or PDF files:

Additional downloadable files are given in the table below; others may be added later.  The first, third, fourth, fifth and seventh entries are revised from an earlier listing.  "TPP" refers to the Thermodynamic Properties Package.

Date type file name subject of file
Nov. 2007 upgrade orificenew.m Replaces orifice.m and orificec.m for orifice flow - corrected file
2/20/07 upgrade refgmstnew.m Replaces Refgmst.m to use TPP and orificenew.m
2/20/07 upgrade refrgdenew.m Function file called by refrgdenew.m
2/20/07 upgrade shocktubemnew.m Replaces shocktubem.m to use TPP, orificenew.m
2/20/07 upgrade shocktubecnew.m Function file called by shocktubemnew.m
2/20/07 upgrade condensermnew.m Replaces condenserm.m to use TPP, orificenew.m
2/20/07 upgrade condensernew.m Function file called by condensermnew.m
2/20/07 upgrade condenserssnew.dat Replaces condenserss.m; use in problem 11.20
8/16/06 new fannom.m Computes Fanno line solution for friction tube
8/16/06 new fanno.m Function file called by fannom.m
10/1/06 new fig8.m Function file for Fig. 8 of 2007 paper below
10/1/06 new fig9m.m Script file for Fig. 9 of 2007 paper below
10/1/06 new fig9.m Function file called by fig9m.m
1/1/07 new Plenary07.pdf PowerPoint presentation; see Publications


Click here for Further Explanation of files dated 8/16/06

Click here for Explanation of files for paper of January 2007

Click here for  Further Explanation of files dated 2/20/07

Other Recent Publications:

Brown, Forbes T., “Bond Graph Modeling and Simulation of Thermodynamic Systems,” invited presentation for the plenary session of the 2007 International Conference on Bond Graph Modeling and Simulation, San Diego, CA, a PowerPoint presentation downloadable (see January 1, 2007 in table above) as a pdf file.  The abstract is published on pages v and vi of the Proc. of ICBGM 2007.

Brown, Forbes T. “Modeling and Simulation of Ferromagnetic Hysteresis,” Proc. 2007 International Conference on Bond Graph Modeling and Simulation,  Ed. F.E. Cellier, J.J. Granda, The Society for Modeling and Simulation International (SCS), Jan. 2007, pp. 129-135.  See the files dated 10/1/06 in the table above, and “Explanation of files for paper of January 2007.”

Brown, F.T. "Hybrid Lumped-and Delay-Bond Modeling and Simulation," 2005 International Conference on Bond Graph Modeling and Simulation, Ed. F.E. Cellier, J.J. Granda, The Society for Modeling and Simulation International (SCS), Simulation Series, Vol. 37, No. 1, pp. 67-72.

Brown, F.T. "Kinetic Energy in Convection Bond Graphs," 2003 International Conference on Bond Graph Modeling and Simulation, Ed. F.E. Cellier, J.J. Granda, The Society for Modeling and Simulation International (SCS), Simulation Series, Vol. 35, No. 2, pp. 191-197.

Brown, F.T. "Simulating Distributed-Parameter Multiphase Thermodynamic Systems Using Bond Graphs," Proceedings of IMECE2002, 2002 ASME International Mechanical Engineering Congress and Exposition Symposium on Automated Modeling, November 17-22, 2002, New Orleans, LA.

Brown, F.T. "Non-Iterative Evaluation of Multiphase Thermal Compliances in Bond Graphs," Proc. Instn Mech Engrs Vol 216, Part I: J. Systems and Control Engineering, 2002.

Brown, F.T. Engineering System Dynamics, a Unified Graph-Centered Approach, Marcel Dekker, Inc. (1026 pages), 2001.

Brown, F.T. and Tentarelli, S.C. "Dynamic Behavior of Complex Fluid-Filled Tubing Systems -- Part 2: System Analysis," Journal of Dynamic Systems, Measurement and Control, ASME Transactions, Vol. 123, No. 1, pp. 78-84, 2001.

Brown, F.T. and Tentarelli, S.C. "Dynamic Behavior of Complex Fluid-Filled Tubing Systems -- Part 1: Tubing Analysis," Journal of Dynamic Systems, Measurement and Control, ASME Transactions, Vol. 123, No. 1, pp. 71-77, 2001.