270 likes | 413 Views
The CCP1GUI. Jens Thomas and Paul Sherwood STFC Daresbury Laboratory j.m.h.thomas@dl.ac.uk. Overview. Brief background and overview of the CCP1GUI A walk-through of how to use it: creating/opening structures setting up calculations submitting jobs viewing results. Introduction.
E N D
The CCP1GUI Jens Thomas and Paul Sherwood STFC Daresbury Laboratory j.m.h.thomas@dl.ac.uk
Overview • Brief background and overview of the CCP1GUI • A walk-through of how to use it: • creating/opening structures • setting up calculations • submitting jobs • viewing results
Introduction • An extensible Graphical User Interface for computational chemistry packages • Aims to provide a uniform environment to enable users to run a variety of different codes on a range of different resources • Provides powerful visualisation capabilities for interpreting the outputs of calculations • A freely available code hosted on Sourceforge • http://sourceforge.net/projects/ccp1gui • Has the potential to run on all the major operating system platforms. • Use of Python and an object-oriented design enables rapid development and for users to script the code for themselves
Why was it developed? • Many of the codes used within CCP1 would benefit from having a Graphical User Interface. • Long-standing need for a graphical interface to GAMESS-UK. • Students and new users of the code can get up and running more quickly. • Requirement for a simplified environment for constructing and viewing molecules. • Need to be able to visualise the complex results of quantum mechanical calculations. • Program should be free so no barriers to its widespread use. • Need a single tool that can be made to to run on a variety of hardware/operating system platforms.
How is it being developed? • Developed using the Python interpreted programming language. • Free – pre-installed on many operating systems. • Heavily object-oriented – simplifies developing new interfaces. • Interpreted language: • Speeds up development • Can interact with the program in real-time • Users can easily customise the program • Integrates well with C/C++ to take advantage of compiled code. • Graphics capabilities provided by the VTK visualisation toolkit. • Free – large community of users/developers. • Used in many scientific fields, so a wide range of capabilites. • Ported to most operating systems/hardware platforms • Automatic wrapping for Python/Java/Tcl.
Current capabilities • Point-and-click operations for constructing molecules • Ability to work with Cartesian and Internal coordinates and convert between them • Support for a variety of molecular file formats: • Cartesian, Internal Coordinate, PDB, Xmol, CML. • Program specific: • CHARMM, ChemShell, Dalton, Gaussian, GAMESS-UK. • Interfaces to run most basic runtypes for GAMESS-UK, Dalton, ChemShell, MNDO and MOPAC • Variety of visualisation possibilities for molecules, scalar and vector data • CCP1GUI is “grid-enabled” so can submit to remote grid computers for running large parallel jobs using Globus, Nordugrid or an eMinerals setup
Create/read in your molecule • Can use the File menu to pull in a molecular structure from a file or create a new molecule. Select the type of file
The Toolbar • On creating or opening a new molecule the toolbar will appear below the main window: • Used for configuring the ‘point and click’ building options • change element types: the default is X - i.e. unassigned. • Add/remove bonds and change the hybridisation of existing atoms. • Add one of a range of pre-defined molecular fragments. • “Clean” the structure - i.e. subject it to a quick ‘n’ dirty MM calculation to optimise the structure (NB- requires the relevant program to be installed).
Additional Editing Functions • The main Edit menu also contains some molecular editing functions. • Undo function for most operations. • Unlimited delete function for when that fails... • For more detailed options select the Edit Coords option to open the Z-matrix editor window. • Options opens a panel with various display options and other “preferences”. • Connect/Extend only available for period structures
Z-matrix Editor • Use for more advanced editing options. • Can create a Z-matrix from Cartesian coordinates with the autoz function (under the convert menu). • Can create and change variables. • Changes here updated in the main window - can also use the main window to select atoms.
Running a calculation • Can use these to create input files • To actually run the code you will need to have it installed somewhere • Select the code from the Compute menu.
Calculation Options - GAMESS-UK • Select the relevant tab to configure different options. • Set up and configure most basic GAMESS-UK runtypes: HF, DFT, MP2… • Control of Geometry optimisations/transition state searches. • Symmetry is turned off by default - check Use Symmetry to take advantage of symmetry • Default basis set applied to all atoms, but can set basis sets on atoms of a particular type (tag) • Use Custom to apply a custom basis downloaded from a libarary e.g. • http://www.emsl.pnl.gov/forms/basisform.html
Calculating Properties - GAMESS-UK • Select which properties to plot • Properties are calculated on a grid - use Edit Grid to set the size, orientation and the number of points • Calculate molecular vibrations analytically where possible or using brute-force finite difference • GAMESS-UK has a limit on 10 properties, so try not to select too many.
Options for running the job • Name the job (also used to name the files) • Select how/where to run the job • Request certain files be kept • Can write an input file with Calc -> WriteInputfile • Can edit with Edit -> Input • Submit with Calc -> Run • On running the GUI will ask whether to use an existing input if one is found
Keeping tabs on running jobs • Jobmanager will appear automatically when a job is submitted • Keeps user updated on the status of jobs • Can kill jobs if necessary • Development features: • Developmental features to suspend and save jobs so that the GUI can be closed while they are running • Saved jobs are automatically detected when the GUI starts up
Viewing the output file • View the actual output or a summary of the results • Good for checking when things go wrong • Failing that, look at the output generated in the shell and any new files created in the run directory (i.e. run: ls -ltr)
Viewing the results of calculations • Different objects have different viewers - can overlay different representations to build up rich and powerful visualisations
Viewing Molecules • All the molecule viewers can be used to determine how the molecule is rendered: ball & stick, wireframe and whether to display labels etc. • Viewers for vibrations and sequences then enable additional functionality on top of this
Scalar data views - surfaces DENSITY/HOMO • Render a surface at a specified contour value • Density -> single surface at specified value • HOMO -> +ve and -ve surfaces COLOUR SURFACE • As for density surface, but can colour the surface by another value • Can select different colour maps for effect
Scalar Data - volume visualisation • Areas of space are coloured according to the value of the data points that lie within them • Can selected the boundary values and the opacity for 5 intervals
Scalar Data - cut slice • A plane that can be moved through the molecule and has the data rendered onto it • Can select whether to use contours or colour the whole surface (colourmap)
Vector Data views • Render data that has magnitude and direction: • Hedgehog: lines oriented according to the direction and scaled by the magnitude • Oriented Glyphs: polygons with size proportional to the data and orientation ot the direction • Streamlines: the path of a particle following the field
Explore your inner artist… • Electric field visualisations: TNT and Water
Summary • A free graphical interface that will run on most platforms • Use to create input files, run jobs and visualise the results of the calculations • Can use to take some of the pain out of running on a grid • Customisable so advanced users can tweak it for their own needs • Download it for yourselves and give it a try - we are interested in hearing about your experiences and how it could be improved