You are on page 1of 20

3.

1SystemDynamicsTool:
STELLAVersion9Tutorial1
IntroductiontoComputationalScience:
ModelingandSimulationfortheSciences
AngelaB.ShifletandGeorgeW.Shiflet
WoffordCollege
2006byPrincetonUniversityPress
Introduction
WecanusethesoftwareSTELLAfromiseesystems(http://www.iseesystems.com/)to
modeldynamicsystems.Dynamicsystemsareusuallyverycomplex,havingmany
componentswithinvolvedrelationships.Forexample,wecanuseSTELLAtomodelthe
competitionamongdifferentspeciesforlimitedresourcesorthechemicalreactionsof
enzymekinetics.
Tounderstandthematerialofthistutorialsufficiently,werecommendthatyoudo
everythingthatisrequested.Whileworkingthroughthetutorial,answerQuickReview
Questionsinaseparatedocument.
InthefirsttutorialonSTELLA,weconsideranexampleonunconstrainedgrowth.
Inthisexample,therateofchangeofthepopulationisequalto10%ofthenumberof
individualsinthepopulation,andtheinitialpopulationis100individuals.Thus,wehave
thefollowingdifferentialequation,orequationinvolvingaderivative:
dP
0.1P, P0 100
dt

Startrunningthesoftware,perhapsbydoubleclickingtheSTELLAicon(
windowintheMapLevelappearsasinFigure3.1.1.

).A

STELLAv9Tutorial1
Figure3.1.1

MapLevel

ByclickingtheModelTabontheleft,gototheModelLevel,inwhichwecanto
enterequationsandconstants(seeFigure3.1.2).
Figure3.1.2

ModelLevel

STELLAv9Tutorial1

Themostimportanticonsforbuildingamodelappearonthetopleftofthislevel's
windowandareinTable3.1.1.Wedescribethemeaningofeachofthesebuilding
blocksinthefollowingsections.
Table3.1.1
BuildingBlock
Stock
Flow
Converter
Connector

BasicbuildingblocksofSTELLA
Icon

Meaning
noun,somethingthataccumulates
verb,activitythatchangesmagnitudeofstock
converts,storesequationorconstant,doesnotaccumulate
transmitsinputsandinformation
Stock

InSTELLAterminology,astockisanounandrepresentssomethingthataccumulates.
Someexamplesofstocksarepopulation,radioactivity,enzymeconcentration,self
esteem,andmoney.Atanyinstant,themagnitudesofthestocksgiveusasnapshotof
thesystem.Themostcommontypeofstockisareservoir,whichaplainrectangle
represents.
QuickReviewQuestion1 InSTELLA,clickontherectangularstockicon.Without
holdingdownthemousebutton,movethecursortowardsthetopmiddleofthe
window.Whatistheshapeofthecursor?
Clickinthewindowtoinsertastockobject.Withoutclickingagain,typethename
ofthestock,population.Ifthestockhasbecomeunselected,clickonceonthestockand
starttypingtochangethename.ThecontentsofthewindowshouldbeasinFigure
3.1.3.

STELLAv9Tutorial1
Figure3.1.3

Contentsofwindowafterinsertionofstockcalledpopulation

QuickReviewQuestion2 Clickonthestock'sname,population,andattempttodrag
thenamearoundthescreen.Describewherethenamecanbedragged.
UndertheFilemenu,selectSave(orctrlsonaPCorcommandsonaMacintosh)
tosaveyourworkonadisk.Useameaningfulnameforthefile,suchas
STELLATutorial1.Saveyourworkfrequently.Thus,ifthereisapowerinterruption,
youwillnotlosemuchofyourwork.Also,sometimesifyoumakeamistake,itiseasier
toclosethefilewithoutsavingandopentherecentlysavedversion.
Flow
WhileastockisanouninthelanguageofSTELLA,aflowisaverb.Aflowisan
activitythatchangesthemagnitudeofastock.Someexamplesofsuchactivitiesare
birthsinapopulation,decayofradioactivity,formationofanenzyme,improvementof
selfesteem,andgrowthofmoney.Theflowiconrepresentsadirectedpipewithaspigot
andflowregulator.
Clickontheflowicon.Startingacoupleofinchestotheleftofthestock,clickand
dragtotherightoverthestockuntiltherectangularstockiconbecomesshaded.Withthe
flowstillselected,typeitsname,growth.ThediagramshouldappearasinFigure3.1.4.

STELLAv9Tutorial1
Figure3.1.4

Diagramafteradditionofgrowthflow

QuickReviewQuestion3 Dragthepopulationstockaroundtherightofthescreen.
Whathappenstothediagram?
Ifmovingthepopulationstockdoesnotresultintheflowarrowmoving,too,but
revealsanothercloud,youneedtoattachtheflowtothestock.Dragthestockoverthe
cloudatthepointofthearrowheaduntilthecloudbecomesshaded.Performthetaskof
QuickReviewQuestion3again.
Saveyourwork.
Converter
Wecanuseaconvertertomodifyanactivity.Aconvertercanstoreanequationora
constant.Forexample,withthepopulationmodel,aconvertermightstoretheconstant
growthrate,say10%=0.1.
Asanexampleforradioactivedecay,radioactivesubstancebismuth210decaysto
radioactivesubstancepolonium210.WithArepresentingtheamountofbismuth210
andBtheamountofpolonium210,theratioB/Aissignificantinthemodelofdecay.A
convertercanstorethisratio.
Selecttheconvertericon,whichisacircle.Clickbelowandtotheleftoftheflow
name,growth.Nametheconvertergrowthrate.Blanksarepermissible.Thediagram
shouldappearsimilartoFigure3.1.5.
Figure3.1.5

Diagramafterinsertionofconvertergrowthrate

ActionConnector
Anactionconnectororconnectortransmitsaninputoranoutput.Forexample,ina
populationmodel,aconnectorcantransmitthegrowthratevaluefromthegrowthrate
convertertothegrowthflow.

STELLAv9Tutorial1

Inaradioactivedecaymodel,connectorsfromthebismuth210(A)stockandfrom
thepolonium210(B)stocktoaconverterfortheratioofBoverAtransmittherespective
amountsofradioactivityforusebytheconverter.
Becausetheytransmitdata,connectorsdonothavenumericalvalues.Also,aflow
cangointoastockbutaconnectorcannot.
Inthepopulationmodel,boththegrowthrateandthecurrentpopulationaffectthe
currentgrowth.Forexample,ifthegrowthrateishigher,soisthegrowth.Moreover,a
largerpopulationexhibitsagreaterchangeinpopulation.Weindicatetheserelationships
byconnectingthegrowthrateconverterandthepopulationstocktotheflowgrowth.
Selecttheconnectoricon,clickonthegrowthratecircleanddraguntilthegrowthflow
darkensbeforereleasing.TheresultingdiagramisasinFigure3.1.6a.Tousethesame
toolagain,holddowntheALTkeyonaPCandtheoptionkeyonaMacintosh.
ConnectpopulationtogrowthasinFigure3.1.6b.
Figure3.1.6

Connectorsdrawntogrowthflow

QuickReviewQuestion4 Fortheconnectorfromthestocktotheflow,clickonthe
smallcircleonthestockanddragitaround.Wherecanyoudragit?
QuickReviewQuestion5 Whathappenstotheconnectorasyoudragthestock
populationaroundthewindow?
Saveyourwork.
Dynamite
Toremoveacomponentfromthediagram,weusedynamite(
).Usingthedelete
keydoesnotcompletelyeliminatetheitemfromthemodel.Atthetopofmenuselectthe
dynamiteicon,whichisthenexttothelasticon.

STELLAv9Tutorial1

QuickReviewQuestion6 Clickthedynamite.Withoutclicking,movethedynamite
cursoroverthestock,flow,andconverter.Whathappenstothesecomponents?
QuickReviewQuestion7 Doesanythinghappenasyoumovethedynamitecursorover
theconnector'sarrowedgeandarrowhead?
QuickReviewQuestion8 Whathappensasyoudragthedynamiteoverthesmallcircle
atthebeginningoftheconnector'sarrow?
QuickReviewQuestion9 Withthedynamiteshadingpopulation,clicktoremovethe
stock.Whatiseliminated?
Whenweremoveanitemwithdynamite,theprocesseliminatestheitemandall
connectedconnectorsandflows.Restorethemodeltoitspreviousformbyclosingthe
currentdocumentwithoutsavingandreopeningthedocument.Ifacomponentis
missing,recreatethemodeltoappearasinFigure3.1.6b.
EquationsandInitialValues
Wearenowreadytoenterequationsandinitialvalues.Tobegindefininganinitial
population,doubleclickthepopulationstockandviewapopupmenuasinFigure3.1.7.
Foraninitialpopulationof100bacteria,type100.Thevaluereplacestheshadedtext
"(Placeinitialvaluehere)".
Figure3.1.7

Popupmenuafterdoubleclickingpopulationstock

STELLAv9Tutorial1

Noticeinthetopleftcorner,bydefaultacheckboxlabeledNonnegativeis
checked.Clearly,populationscannotbenegative,sothisdefaultisappropriate.
However,sometimesastockcanstoreanegativeamount,suchasmoneyinthecaseof
debtorvelocityinthecaseofafallingobjectwithupbeingpositive.Insuchsituations,
weshouldunchecktheNonnegativecheckbox.
ClickOK.
QuickReviewQuestion10
Toestablishthegrowthrateas10%=0.1,first,double
clicktheconverter.WhatnamedoesSTELLAgivefortheconverter?
Type0.1inplaceoftheshaded"{Placerighthandsideofequationhere...}",and
thenclickOK.Noticethatafterenteringagrowthrateandaninitialpopulation,the
questionmarksnolongerappearinthecircleandrectangle,respectively.
Forequations,STELLAusesanunderscoreinplaceofablankinaname.Thus,
"growthrate"inadiagram(seeFigure3.1.6)becomes"growth_rate"inaSTELLA
equation(seeFigure3.1.7).Weemploysuchreplacementofblankswithunderscoresin
thetextandtutorialstoavoidconfusionwithcomponentnames.
Unlikegrowth_rate,theflowgrowthisnotaconstant;butthegrowthinthe
populationchangeswithtimeasthepopulationchanges.Forourexample,atanyinstant,
therateofchangeinthepopulation,orgrowth,is10%(growth_rate)ofthecurrent
population(population).Incalculusterminology,theinstantaneousrateofchangeof
populationisthederivativeofpopulationwithrespecttotimet,sothatwehavethe
followingformula:
d(population )
growth _ rate population
dt
0.1 population

Doubleclickingonthegrowthfaucet,weseeapopupmenuasinFigure3.1.8.

STELLAv9Tutorial1
Figure3.1.8

Popupmenuforgrowth

QuickReviewQuestion11
ThesubmenuRequiredInputsliststheitemsthathave
connectorstogrowth,namelypopulationandgrowth_rate.Weincludethese
variablesintheformulaforgrowth.Forourexample,thisinstantaneousrateof
changeofpopulationis0.1populationbacteriaperunitoftime.Using*for
multiplicationandclickingontheappropriatevariablesinRequiredInputs,enter
theformulaforgrowth.Whatistheresultingformula?ClickOK.
AsFigure3.1.8shows,thepopupmenuforaflowhastworadiobuttons,
UNIFLOWandBIFLOWinthetopleftcorner.ThedefaultisUNIFLOW,which
indicatesthatgrowthcanonlyflowinonedirection,intothestockpopulation.Should
wewishtoallowvaluestoflowinbothdirectionsthroughtheflow,wewouldcheck
BIFLOW.Inthiscase,theflowwouldappearasinFigure3.1.9,withtheopen
arrowheadindicatingtheprimarydirectionintopopulationandthedarkenedarrowhead
representingthepossibilityofremovalfromthepopulation.
Figure3.1.9

Biflow
tip
a
u

th
o
g

e
ra
tg
o

STELLAv9Tutorial1

10

ClickingtheEquationTabontheleftsideoftheSTELLAwindowtakesustothe
EquationLevelandrevealstheresultingformulas,whichEquationSet1displays.On
themodel,wehadestablishedavalueforgrowth_rate(0.1),aninitialvaluefor
population(100),andtheequationforgrowth(growth_rate*population).Thevariable
dt,whichappearsintheformulaforpopulation(t),representsthechangeintimebetween
timesteps.Thevariabletrepresentstime;andpopulation(t)isthepopulationattimet;
whilepopulation(tdt)isthepopulationattheprevioustimestep,tdt.Aswediscuss
indetailinModule3.2on"UnconstrainedGrowth,"thefirstequationindicatesthe
populationatonetimestepisthepopulationatprevioustimestepplusthechangein
populationoverthattimeinterval:
(newpopulation) =(oldpopulation)+(changeinpopulation)
=(oldpopulation)+growth*dt
=(oldpopulation)+(growthover1unit)*(lengthoftimestep)
EquationSet1 Formulas
population(t)=population(tdt)+(growth)*dt
INITpopulation=100
INFLOWS:growth=growth_rate*population
growth_rate=0.1

QuickReviewQuestion12
following:
a.
b.
c.

Forcurrenttimet,givethemeaningofeachofthe

tdt
population(tdt)
growth*dt

Saveyourworkandcontinuesavingfrequently.
Comments
ClickthetoptabontheleftoftheSTELLAwindowtogototheInterfaceLevel.Figure
3.1.10displaysthetoppartoftheresultinglayer.

STELLAv9Tutorial1
Figure3.1.10

11

InterfaceLevel

Documentingourworkisextremelyimportant.Wewantotherpeopletobeableto
understandthemodelasquicklyaspossible.Moreover,wecanveryeasilyforgetwhat
weintendedjustafewdaysorhoursago.Wemayhaveseveralverysimilarversionsof
thesamemodelthatweneedtodistinguishonefromanother.Wedonotwanttowaste
ourownorsomeoneelse'stimebyhavingtodigdeeplyintothedifferentlevelsand
equationstounderstandthemodel.
QuickReviewQuestion13
Toenteracomment,clicktheTicontogetatextbox.
Whatistheshapeoftheresultingcursor?
Clicktowardsthetopmiddleofthewindowtoinsertthetextbox.Type
"UnconstrainedGrowthPopulationModel"ononelineandyournameanddateonthe
next.Typeanexplanationthatthemodelisforgrowthofapopulationwithnolimiting
factors.
QuickReviewQuestion14
appears?

Clickontheoutsidelinesofthetextbox.What

Dragononeofthesmallshadedrectangles,calledhandles,atacornertoresizeor
displayallofthetext.Dragononeofthebox'slinestomovetheboxwithoutresizing.

STELLAv9Tutorial1

12
Graphs

IntheInterfacelevel(Figure3.1.10),thegraphpadicon(
)appearsasapictureofa
smallgraphinthemiddleofthesequenceoficons.Afterclickingthisicon,clicktowards
theleftofthewindowtoplacethegraphobject.Agraphpopupwindowappears
immediately.Adjusttheplacementofthegraphbydraggingonitstitlebar.
QuickReviewQuestion15
Clickoutsideofthegraphpopupwindow.What
happensandwhatdoyousee?
The"Graph1"iconwillremaininthewindowunlessyoudestroyitwithdynamite.
Doubleclickonthe"Graph1"icontoredisplaythegraphpopupwindow.Movethe
graphtowardsthemiddletopofthescreenandresizeasyouwish.Tocontinue
displayingthegraphandtopreventaccidentallymovingit,clickonthethumbtackicon
onthetopleftofthegraphwindow.Doubleclickinsidethegraphwindowtodisplaythe
GraphDefinitionWindow(seeFigure3.1.11).
Figure3.1.11

GraphDefinitionWindowwithGraphWindowinbackground

InthetextboxforTitle:inthemiddle,type"Populationvs.Time"sothatthetitle
appearsonthegraph'swindow.LeavingthegraphtypeasthedefaultTimeSeries,time
willappearonthehorizontalaxis.TohaveSTELLAgraphthepopulationwithrespectto

STELLAv9Tutorial1

13

time,wedoubleclickpopulationunderAllowable.Alternatively,clickonceonthe
populationline,andclick">>".
QuickReviewQuestion16
DoubleclickgrowthunderAllowables.Givetwoways
toremovegrowthfromtheSelecteditems.
Ifyouhavenotdonesoalready,removegrowthfromtheSelecteditems.Closethe
GraphDefinitionWindowbyclickingOK,andrunthesimulationbychoosingRun(or
ctrlronaPCorcommandronaMacintosh)fromtheRunmenutoobtainthegraphof
Figure3.1.12.Noticethatthebottomleftcornerofthegraphindicatesaninitial
population(attime0.0)of100.
Figure3.1.12

GraphofPopulationvs.Timeusingthedefaultrunspecifications

1: population
1:

400

1:

250

1
1
1:

100

1
0.00

3.00

Page 1

6.00
Time
Populaion vs. Time

9.00
9:36 AM

12.00
Mon, S ep 16, 2002

QuickReviewQuestion17

Howmanytimeunitsdoesthesimulationrun?

QuickReviewQuestion18
populationtodouble?

Abouthowmanytimeunitsdoesittakefortheinitial

Tochangethedefaulttimespecifications,fromtheRunmenuchooseRunSpecs,
sothatthepopupmenuasinFigure3.1.13.Havethesimulationrunfor100timeunits.
Ifwearemodelingthegrowthofapopulationofbacteria,thetimeunitwouldprobably
beanhour;whileforalargeranimal,theunitmightbeamonth.Supposingthemodelis
foracolonyofbacteria,changetheUnitofTimetoHours.ChangeDTto0.1.Thus,
calculationsforthesimulationwillbeevery0.1hourinsteadofevery0.25hour.
Usually,asmallerDTgeneratesmoreaccurateresultsbutcausesthesimulationtotake
longer.Althoughthecomputationstakelonger,wecanalsoobtainbetterresultswiththe
RungeKutta2ortheRungeKutta4integrationmethod.Forthetimebeing,leavethe
IntegrationMethodasthedefault,Euler'sMethod.Chapter5on"Simulation
Techniques"discussesthesemethods.

STELLAv9Tutorial1
Figure3.1.13

14

RunSpecspopupmenu

QuickReviewQuestion19
Aftermakingtheabovechanges,howmanytimesteps
(DT's)willbeinthesimulation?
ClickOK,andrunthesimulation.NoticeinFigure3.1.14thatSTELLAchangesthe
rangeonthetimeaxisto0.00100.00andonthepopulationaxisto03000000.
Figure3.1.14 GraphofPopulationvs.TimeusingtheRunSpecspopupmenuof
Figure3.1.13
1: population
1:

3000000

1:

1500000

1:

Page 1

1
0.00

1
25.00

1
50.00
Hours

75.00
100.00
9:44 AM Mon, S ep 16, 2002

Populaion vs. Time

Topreservethisgraphregardlessofwhatotherchangeswemake,clicktheLock
iconatthebottomleftofthegraphwindow(seeFigure3.1.14).Clickingthenexticon
wouldprintthegraph.Selectionofdynamiteonthegraphwindowclearsthegraph.If
weclicktheQuestionMarkicon,wecanenternotesaboutthegraph.Ifwehavemore
thanonepage,wecanclickonthebottomleftcornertopagethroughthegraphs.

STELLAv9Tutorial1

15

DoubleclickthegraphtodisplaytheGraphDefinitionWindowonceagain(see
Figure3.1.11).Togenerateanewgraphpage,selecttheuparrowbythewordNew
aboveOKonthebottomrightofthewindow.Forthispage,maketheproper
specificationstoplotpopulationandgrowthfrom0to5hoursonthesamegraph(see
Figure3.1.15).Runthesimulation.NoticeinFigure3.1.16thatthegraphsarenumbered
andcoloredwithdifferentscalesontheverticalaxis.Therangesaresuchthatthegraphs
appearalmosthorizontalat0.
Figure3.1.15

RunSpecsforgraphsofpopulationandgrowth

STELLAv9Tutorial1
Figure3.1.16

16

GraphofPopulation&Growthvs.Time

Doubleclickingthegraph,wecanchangethescalesintheGraphDefinition
Window(seeFigure3.1.17).OntheSelectedsubmenu,clickpopulation.Youmayneed
toclicktheupdownarrowtoitsrighttodisplaytheminimum(Min)andmaximum
(Max)valuesontheScaletowardsthebottomleft.Changetherangetofrom0to150,
andclickSet.Similarly,setthescaleforgrowthtofrom0to150,andclickSetandOK.
Withoutrerunning,thegraph,whichisinFigure3.1.18,immediatelyreflectsthescale
changes.
Figure3.1.17

GraphDefinitionWindowtochangescales

STELLAv9Tutorial1

17

Figure3.1.18 GraphofPopulation&Growthvs.Timeforscalesof0to150for
populationandgrowth

QuickReviewQuestion20
Noticethatwestillcannotseeallofthepopulation
graphforthetimeperiod.Whatmaximumtothenearest10(160,170,180etc.)
showstheentiregraphfrom0to5?
Changetherangeforpopulationandgrowthtobethesameandsothatbothgraphs
appearcompletely.
Tables
Besidesapictorialview,wemaywantatableofvaluesfromthesimulation.TheTable
Padicon(
)appearstotherightoftheGraphicononthewindowfortheInterface
Level(seeFigure3.1.10).Clickthisiconandplaceatableobjectbelowthegraphobject.
DoubleclickthetabletodisplaytheTableDefinitionWindowasinFigure3.1.19.
Namethetable"PopulationChanges,"andmovegrowthandpopulationtotheSelected
submenu.UnselectEveryDT,andchangethereportingintervalto10.Thus,although
thesimulationwillperformthecalculationsasbefore,thetablewilldisplaytheresultsfor
every10hours.Figure3.1.20displaystherevisedTableDefinitionWindow.Runthe
simulation.

STELLAv9Tutorial1
Figure3.1.19

TableDefinitionWindow

18

STELLAv9Tutorial1
Figure3.1.20

19

RevisedTableDefinitionWindow

QuickReviewQuestion21

Howmanyrowsofvaluesappearinthetable?

DragtheverticallineseparatingtheHoursandgrowthcolumnstothelefttoadjust
thespacing.Todisplaythelargerpopulationvalues,draganotherverticallinetothe
right.
Itismoreappropriatetohavethegrowthandpopulationinwholenumbers.To
changetheformatofthepopulationvalues,doubleclickthepopulationcolumnheading.
QuickReviewQuestion22
numbers?

Whatdowedotodisplaythepopulationinwhole

Changetheprecisionofeachcolumnto0,andclickOKandviewtheresult.
Input/OutputTools
WecanchangeinitialvaluesandconstantsinthemodelbygoingtotheMap/Model
Level,doubleclickingthestockorconverter,andchangingthevalue.Inrunningour
modelforseveralsituations,thisprocessistedious.Moreover,wecannotdetectthe
valuesimmediatelybylookingatthescreenorprintout.However,STELLAhasavariety

STELLAv9Tutorial1

20

oftoolsforinputandoutputvaluesthatcanhelpusperformanassortmentofsimulations
quicklyandviewtheresultsreadily.
Oneofthemostusefulsuchtools,istheListInputDevicefordefiningconstants
andinitialvalues.Clickitsicon(
)twoitemstotheleftofthegraphicononthe
InterfaceLevelWindow(seeFigure3.1.10).AfterplacingaListInputDeviceonthe
window,doubleclickinablankareaofthelist(notonthedropdownmenuorscrollbar)
andspecifytheListTitleas"Values."Forthelist,select(initial)populationand
growth_rate,choosingappropriateminimumandmaximumvalues,such12000and0
0.9,respectively.ClickOK.Unlockanylockedtablesorgraphs.Changetheinitial
populationto15andthegrowthrateto0.2.Runthesimulation.Ifagraphdoesnot
displayproperly,doubleclickthegraphandchangethescale.
QuickReviewQuestion23
Whathappenswhenyouclick"U"for"RestoreAll
Devices"towardsthebottomleftofthewindow?
TheKnobandtheSliderInputDeviceiconsareimmediatelytotheleftandright
oftheListInputDeviceicon,respectively.Removegrowth_ratefromtheinputlistby
doubleclickingablankareatowardsthetopofthelistanddoubleclickinggrowth_rate.
PlaceaKnobInputDeviceforinputofgrowth_rateinthewindow.Changethevalueof
growth_ratebyrotatingtheknobandthenbytypingavalueinthesmalldisplayabove
theknob.Usedynamitetodestroytheknob.
QuickReviewQuestion24
InsertaSliderInputDeviceforgrowth_rate.Givetwo
waystodesignatethegrowthratewiththisdevice.
WecanusetheNumericDisplaytoshowonevalue.TheNumericDisplayicon
appearstotheleftoftheTextBoxicon,"T".InsertaNumericDisplayobjectonthe
window,andhaveitdisplaypopulationwithnodecimalpoint.
QuickReviewQuestion25
InthepopupwindowfortheNumericDisplay,whatdo
wespecifytohavetheoutputvalueforpopulationbeawholenumber?
PrinttheInterface,Map/Model,andEquationsLevelWindows.SaveandQuit
STELLA.
Reference
GettingStartedwiththeSTELLASoftware,AHandsOnExperience,2004.iseesystems
http://www.iseesystems.com/

You might also like