Get from Ico-github-logo

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Panic Simulator

  • PanicSimulatorGui(varargin)
    PANICSIMULATORGUI MATLAB code for PanicSimulatorGui.fig
  • agentButtonDown( src, evnt )
    AGENTBUTTONDOWN displays agent information on left click
  • agentButtonMoving( src, e...
    AGENTBUTTONMOVING moves current clicked agent's circle following mouse
  • agentButtonUp( src, evnt )
    AGENTBUTTONUP saves new agent coordinates of moved agent
  • agentPlacingTimeoutGui(va...
    AGENTPLACINGTIMEOUTGUI MATLAB code for agentPlacingTimeoutGui.fig
  • agentsStep( simulationObj...
    AGENTSSTEP calculates the new agent matrix after one time step with ode23
  • arenaEditor(varargin)
    ARENAEDITOR MATLAB code for arenaEditor.fig
  • automate( handles )
    AUTOMATE Should be executed after time step of ode
  • automateSettingsGui(varar...
    AUTOMATESETTINGSGUI MATLAB code for automateSettingsGui.fig
  • calcXMax( settings )
    CALCXMAX calculates arena width dependent on agent number and arena
  • circleOfColumnsButtonDown...
    CIRCLEOFCOLUMNSBUTTONDOWN prepares the creation of a line of wall
  • circleOfColumnsButtonMovi...
    CIRCLEOFCOLUMNSBUTTONMOVING modifes the circle which was drawn and stored by
  • circleOfColumnsButtonUp( ...
    CIRCLEOFCOLUMNSBUTTONUP delete line drawn by lineOfColumnsButtonDown, draw circle of
  • colorMapPressure( pressure )
    COLORMAPPRESSURE returns a color related to a pressure value
  • columnButtonDown( src, ev...
    COLUMNBUTTONDOWN displays column information on left click
  • columnButtonMoving( src, ...
    COLUMNBUTTONMOVING moves current clicked wall's circle following mouse
  • columnButtonUp( src, evnt )
    COLUMNBUTTONUP saves new wall coordinates of moved column
  • createAgentRadii( NAgent )
    CREATEAGENTRADII Creates realistic radii of human, according to statistics
  • createAgents( settings )
    CREATEAGENTS generates agent matrix randomly in the arena, in dependence
  • createAutomateObj( )
    CREATEAUTOMATEOBJ creates an automateObj, dependent on settings
  • createCircleOfColumns( mi...
    CREATECOLUMN creates a circle of columns
  • createDefaultSettings( )
    CREATEDEFAULTSETTINGS this function can be called to produce a default
  • createLineOfColumns( Xsta...
    CREATELINEOFCOLUMNS returns coordinates of the center of equally distant
  • createSimulationObj( sett...
    CREATESIMULATIONOBJ generates agent matrix and wall matrix and exit line
  • deactivateUiControls( hFig )
    DEACTIVATEUICONTROLS Deactivates all Ui Controls
  • dispAutomateStatus( handl...
    DISPAUTOMATESTATUS Displays current automatization process in infoline
  • errorOpenFileGui(varargin)
    ERROROPENFILEGUI MATLAB code for errorOpenFileGui.fig
  • exitLineButtonDown( src, ...
    EXITLINEBUTTONDOWN enables moving exit when mouse is moved
  • exitLineButtonMoving( src...
    EXITLINEBUTTONMOVING moves clicked exit's line following mouse
  • exitLineButtonUp( src, ev...
    EXITLINEBUTTONUP saves new exit coordinates of moved exit
  • findjobj(container,varargin)
    findjobj Find java objects contained within a specified java container or Matlab GUI handle
  • infoNoFramesCapturedGui(v...
    INFONOFRAMESCAPTUREDGUI MATLAB code for infoNoFramesCapturedGui.fig
  • infoVideoFileSavedGui(var...
    INFOVIDEOFILESAVEDGUI MATLAB code for infoVideoFileSavedGui.fig
  • isLeft( a, b, c )
    ISLEFT returns true when [c1,c2] is left of line defined by end points
  • lineOfColumnsButtonDown( ...
    LINEOFCOLUMNSBUTTONDOWN prepares the creation of a line of wall
  • lineOfColumnsButtonMoving...
    LINEOFCOLUMNSBUTTONMOVING modifes the line which was drawn and stored by
  • lineOfColumnsButtonUp( sr...
    LINEOFCOLUMNSBUTTONUP delete line drawn by lineOfColumnsButtonDown, draw line of
  • modifySettingsDueToAutoma...
    MODIFYSETTINGSDUETOAUTOMATEOBJ some variables in settings need to be
  • newAgentButtonDown( src, ...
    NEWAGENTBUTTONDOWN generates a new agent at current position of mouse
  • newColumnButtonDown( src,...
    NEWCOLUMNBUTTONDOWN generates a new wall at current position of mouse
  • newExitLineButtonDown( sr...
    NEWEXITLINEBUTTONDOWN prepares the creation of a new exit line
  • newExitLineButtonMoving( ...
    NEWEXITLINEBUTTONMOVING modifes the line which was drawn and stored by
  • newExitLineButtonUp( src,...
    NEWEXITLINEBUTTONUP stores new exit data
  • newWallLineButtonDown( sr...
    NEWWALLLINEBUTTONDOWN prepares the creation of a line of wall
  • newWallLineButtonMoving( ...
    NEWWALLLINEBUTTONMOVING modifes the line which was drawn and stored by
  • newWallLineButtonUp( src,...
    NEWWALLLINEBUTTONUP draws final wall line and stores new wall
  • objectButtonDown( src, ev...
    OBJECTBUTTONDOWN executes common button down tasks and calls appropriate
  • odeEventFunction( t, y, a...
    ODEEVENTFUNCTION called inside ode solver, if one of value goes to 0, an
  • odeRhs(~,odeVec,radii,col...
  • odeRhsWithPressure(~,odeV...
    ODERHSWITHPRESSURE returns right hand side of 1st order ODE "dv/dt = f(t,v)"
  • plotAgentCircle(x,y,r)
    PLOTAGENTCIRCLE plots a circle with center in [x,y] and radius r
  • plotAgents( agents, colum...
    PLOTAGENTS plots all agents and columns in the range [xMax, yMax]
  • plotAutomate( automateObj )
    PLOTAUTOMATE1 plots the outcome of the velocity automatization process
  • plotCircle(x,y,r)
    PLOTCIRCLE plots a circle with center in [x,y] and radius r
  • plotExitLine( x, y )
    PLOTEXITLINE plots the green-red exit line from (x1,y1) to (x2,y2)
  • plotGrid( limits )
    PLOTGRID plots a collegeblock like background with 1 m between each block
  • plotIndividualExitTimes( ...
    PLOTAUTOMATE2 plots all individual exit times in addition to already
  • plotInit(simulationObj, s...
    PLOTINIT plots agents, columns and the grid
  • plotUpdate( hObj, agents...
    PLOTUPDATE updates the position of the agent circles and their pressure
  • plotWallColumn(x,y,r)
    PLOTWALLCOLUMN plots a blue column with center in [x,y] and radius r
  • plotWallLine( x, y )
  • reactivateUiControls( dea...
    REACTIVATEUICONTROLS reactivates all ui controls previously deactivated
  • resetAutomateObj( automat...
    RESETAUTOMATEOBJ Resets all indices of the automateObj to initial
  • resetProcedure(handles)
    RESETPROCEDURE executes all necessary tasks when a reset of the arena is
  • resetProcedureWithoutAuto...
    RESETPROCEDUREWITHOUTAUTOMATE executes all necessary tasks when a reset
  • resetSimulationObj( simul...
    RESETSIMULATIONOBJ Resets variables of simulation obj, like time...
  • secondsToTimeString( s )
    SECONDSTOTIMESTRING returns time in format
  • setNAgent( settings, NAge...
    SETNAGENT changes NAgent in settings to desired value, also adapts xMax
  • setWallAngle( settings, w...
    SETWALLANGLE changes wall angle to desired value, also adapts xMax
  • setXMax( settings, xMax )
    SETXMAX changes xMax to desired value
  • setYMax( settings, yMax )
    SETXMAX changes yMax to desired value
  • settingsGui(varargin)
    SETTINGSGUI MATLAB code for settingsGui.fig
  • timerFunction( hObject)
    TIMERFUNCTION calls the updateAgent function and plots the new matrix if
  • timerStartFunction( hObject)
    TIMERSTARTFUNCTION does all necessary stuff when timer is first started
  • timerStopFunction( hObject )
    TIMERSTOPFUNCTION does all necessary stuff when timer is first started
  • validateAgents( agents )
    VALIDATEAGENTS validates if agent matrix is of right format
  • validateAutomateObj( auto...
    VALIDATEAUTOMATEOBJ validates if automateObj is of right format
  • validateColumns( columns )
    VALIDATECOLUMNS validates if column matrix is of right format
  • validateExitCoord( exitCo...
    VALIDATEEXITCOORD validates if exitCoord is of right format
  • validateNum( num, style, ...
    VALIDATENUM validates if NUM is of desired format
  • validateSettings( settings )
    VALIDATESETTINGS validates if settings is of right format
  • validateStr( str, style, ...
    VALIDATESTR validates if STR can be transformed to number and is of desired format
  • validateWallLines( wallLi...
    VALIDATEWALLLINES validates if wallLines is of right format
  • videoFolderNotExistentExe...
    VIDEOFOLDERNOTEXISTENTEXEGUI MATLAB code for videoFolderNotExistentExeGui.fig
  • videoFolderNotExistentMat...
    VIDEOFOLDERNOTEXISTENTMATGUI MATLAB code for videoFolderNotExistentMatGui.fig
  • wallLineButtonDown( src, ...
    WALLLINEBUTTONDOWN displays wall line information on left click
  • wallLineButtonMoving( src...
    WALLLINEBUTTONMOVING moves current clicked wall line following mouse
  • wallLineButtonUp( src, ev...
    WALLLINEBUTTONUP saves new wall line coordinates of moved wall line
  • warningsOff( )
    WARNINGSOFF Switches some warnings off
  • PanicSimulator.m
  • View all files
5.0 | 3 ratings Rate this file 14 Downloads (last 30 days) File Size: 6.41 MB File ID: #46849 Version: 1.1
image thumbnail

Panic Simulator


Julian (view profile)


04 Jun 2014 (Updated )

Simulates panic behaviour in modifiable rooms with one exit

| Watch this File

File Information

The aim of the Panic Simulator is to simulate features of human escape panic in crowded environments with a single exit e.g. baths, discotheques, stadia, lecture halls or rooms in general. Thereby the modeling of the pedestrian’s behavior is inspired by the model used by Helbing et al.*.
The graphical user interface enables an intuitive and fast handling in all settings and features of the Panic Simulator as well as it allows convenient research in the fields of panic behavior and room architectures.
The basic characteristics and features of the Panic Simulator are:
SETTINGS: management of the properties for Agents (simulated individuals), Arena (simulated environment), Equation of motion (model of pedestrian’s behavior) and Plot (speed of simulation)

ARENA EDITOR: powerful editor to adjust and manipulate the environment by creating, removing or modifying the properties of Agents and Arena

AUTOMATE: statistic tool allowing automated variable sweep, averaging over multiple runs and data visualization

For detailed description of all features please read the ‘Panic Simulator User Guide’.

* Dirk Helbing, Illes Farkas, Tamas Vicsek, Simulating dynamical features of escape panic, Nature 407, 487-409 (2000)


Findjobj Find Java Handles Of Matlab Graphic Objects inspired this file.

Required Products MATLAB
MATLAB release MATLAB 8.3 (R2014a)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (3)
13 Dec 2015 li xingchun

13 Dec 2015 li xingchun

05 Jun 2014 Adam Danz

Adam Danz (view profile)

17 Aug 2015 1.1

Updated description

Contact us