Setup and Input Parameters
After running the program, the first window presented to the user is shown in Figure 6.
The "Input Parameters" section is populated with some initial values that can be edited by the user
(the individual parameters are described in the next section).
Once finished editing the parameters, clicking the "Set up" button will validate that the parameters represent a valid simulation.
If validation fails, the user is represented with an error message instructing them on how to fix the issue(s).
After passing validation, the Monte Carlo back-end proceeds to generate an initial configuration as shown in Figure 7.
Figure 6 - The initial state of the program when it is first started.
Clicking the "Set up" button validates the input parameters and generates an initial state.
Setup and Input Parameters
Number of sites along the dimensions of the simulation box.
Total number of polymers in the system.
Total number of monomers in an -diblock copolymer.
Number of monomers in the -block of an -diblock copolymer.
The Flory-Huggins interaction parameter multipled by . Dictates the energy penalty of monomer interactions.
Length of relaxation period before sampling system statistics (in units of Monte Carlo steps per monomer).
Length of statistics gathering period (in units of Monte Carlo steps per monomer).
Period between taking samples in the estimation phase (in units of Monte Carlo steps per monomer).
Cumulative probabilities with which the snake, flip and crank moves are attempted (must sum to one).
E.g., attempts the snake move
45% of the time, the flip move 10% of the time and the crank move the remaining 45% of the time.
Initial Configuration and Interacting with the Viewer
Once the input parameters have been validated, the Monte Carlo model sets up an initial configuration that is subsequntly displayed in the
configuration viewer by the front-end (Figure 7).
The user is then able to interact with the configuration:
Rotation:
Right-click and hold on the configuration. Moving the mouse then allows the configuration to be rotated in any direction.
Zoom:
Scroll the mouse wheel on the configuration to zoom in/out.
Translate:
Push and hold the middle mouse button on the configuration. Moving the mouse then allows the configuration to be translated within the viewer.
Reset View:
Double clicking the middle mouse button in the configuration viewer will reset the view to its default position.
Figure 7 - The state of the program after the "Set up" button has been clicked and the input parameters have been validated.
An initial state has been generated and is displayed in the configuration viewer (can be zoomed and rotated).
Subsequently clicking the "Run" button will start the Monte Carlo simulation.
Running the Simulation and Viewing its Status
After inspecting the initial (non-equilibrium) configuration, the user can click the "Run" button to start the Monte Carlo simulation.
The simulation's progress is displayed to the user in the "Status" Section, as shown in Figure 8 and decribed below:
Equilibration:
The percentage of the simulation's equilibration (relaxation) period completed. Displayed as text and a progress bar.
Statistics:
The percentage of the simulation's statistics period completed. Displayed as text and a progress bar.
Sweep #:
The step number reached by the simulation at the last update of the front-end (in units of Monte Carlo steps per monomer).
ms/sweep:
The average amount of time (in milliseconds) for the system to attempt an update of every monomer in the system.
Figure 8 - The state of the program after the "Run" button has been clicked and the system is part way through a simulation.
The "Controls" section allows the user to change parameters related to redrawing the configuration
(less drawing leads to faster progress through the Monte Carlo simulation).
Using the Controls
While the simulation is running, the "Controls" section allows the user to alter how the configuration is displayed, as well as how often.
The various controls are detailed as followed:
"Update Plot" Checkbox:
Switches on/off updates of the configuration display (the simulation continues in the background).
"AB-A-B" Radio Group:
Selects whether to display all monomers (AB), A-monomers (A) or B-monomers (B).
"Update Freq" Slider:
Specifies how often to update the configuration displayed on the front-end.
"Shell Depth" Slider:
The number of lattice layers (from the outside in) that are displayed when drawing the configuration.
Efficiency Considerations
It should be noted that displaying the configuration too often can negatively impact the speed of the Monte Carlo simulation.
The size of the effect depends upon a number of factors, including simulation box size, but can be mitigated to a large extent
by our choice of display control parameters:
- We are usually interested in observing the faces of the simulation box, which obscure the inside from view.
Using the "Shell Depth" slider to display only one or two layers stops the internal (unobservable) layers from being
drawn, saving computational effort and increasing simulation speed.
If the internal layers need to be observed (e.g., checking domain purity while displaying only A or B monomers),
the shell depth can be momentarily increased.
- Reducing how often the configuration is redrawn via the "Update Freq" slider will take fewer computational
resources away from the Monte Carlo simulation working in the background. Alternatively, unticking the "Update Plot"
checkbox will have the most drastic effect.
When altering the display parameters, the user should observe their effects on the "ms/sweep" in the "Status" section
(a lower number is better).