1 / 13

Lecture 2

Lecture 2. Implementation Issues. ChemShell. Extended Tcl Interpreter Scripting capability Interfaces to a range of QM and MM codes including GAMESS-UK DL_POLY MNDO97 TURBOMOLE CHARMM GULP Gaussian94 Implementation of QM/MM coupling schemes link atom placement, forces etc

alaura
Download Presentation

Lecture 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 2 Implementation Issues

  2. ChemShell • Extended Tcl Interpreter • Scripting capability • Interfaces to a range of QM and MM codes including • GAMESS-UK • DL_POLY • MNDO97 • TURBOMOLE • CHARMM • GULP • Gaussian94 • Implementation of QM/MM coupling schemes • link atom placement, forces etc • boundary charge corrections

  3. ChemShell Architecture - Languages • An extended Tcl interpeter, written in.. • Tcl • Control scripts • Interfaces to 3rd party executables • GUI construction (Tk and itcl) • Extensions • C • Tcl command implementations • Object management (fragment, matrix, field, graph) • Tcl and C APIs • I/O • Open GL graphics • Fortran77 • QM and MM codes: GAMESS-UK, GULP, MNDO97, DL_POLY

  4. Core ChemShell Tcl interpreter, with code to support chemistry data: Optimiser and dynamics drivers QM/MM Coupling schemes Utilities Graphics GAMESS-UK (ab-initio, DFT) MNDO (semi-empirical) DL_POLY (MM) GULP (Shell model, defects) Features Single executable possible Parallel implementations External Modules CHARMM TURBOMOLE Gaussian94 MOPAC AMBER CADPAC Features Interfaces written in Tcl No changes to 3rd party codes ChemShell Architecture

  5. ChemShell control files are Tcl Scripts Usually we use a .chm suffix ChemShell commands have some additional structure, usually they take the following form command arg1=value1 arg2=value2 Arguments can serve many functions mm_defs=dl_poly.ff Identify a data file to use coords=c Use object c as the source of the structure use_pairlist=yes Provide a Boolean flag (yes/no, 1/0,, on/off) list_option=full Provide a keyword setting theory=gamess Indicate which compute module to use Sometimes command arg1=value1 arg2=value2 data ChemShell basics

  6. ChemShell object types fragment - molecular structure creation: c_create, load_pdb …. Universal!! zmatrix z_create, newopt, z_surface matrix creation: create_matrix, energy and gradient evaluators, dynamics field creation: cluster_potential etc, graphical display, charge fits GUI only 3dgraph ChemShell Object types

  7. Between calculations, and sometimes between commands in a script, objects are stored as files. Usually there is no suffix, objects are distinguished internally by the block structure. ChemShell Object Representations % cat c block = fragment records = 0 block = title records = 1 phosphine block = coordinates records = 34 p 4.45165900000000e+00 0.00000000000000e+00 -8.17756491786826e-16 c 6.18573550000000e+00 -2.30082107458395e+00 1.93061811508830e+00 c 8.21288557680633e+00 -3.57856465464377e+00 9.30188790875432e-01 c 9.49481331797844e+00 -5.31433733714784e+00 2.37468849115612e+00 c 8.74959098234423e+00 -5.77236643959209e+00 4.81961751564967e+00 …….... • Multi block objects are initiated by an empty block (e.g. fragment) • Unrecognised blocks are silently ignored

  8. Object Caching • During a run objects can be cached in memory, the command to request this is the name of the object (similar to a declaration in a compiled language) # fragment c c_create coords=c { h 0 0 0 h 0 0 1 } list_molecule coords=c delete_object c # No file is created here • Confusion of objects with files can lead to confusion!!

  9. Object Input and Output • If you access an object from a disk, ChemShell will always update the disk copy when it has finished (there is no easy way of telling if a command or procedure has changed it). • Usually this is harmless (e.g. output formats are precise enough), but unrecognised data in the input will not be present in the output, take a copy if you need to keep it. • E.g. if a GAMESS-UK punchfile contains a fragment object and a single data field (e.g. the potential) you can use it as both a fragment object and a field object % rungamess test % cp test.pun my_structure % cp test.pun my_field % chemsh …….

  10. Energy Gradient Evaluators • Many modules are designed to work with a variety of methods to compute the energy and gradient. The procedure relies on • the interfaces to the codes being consistent, each comprises a set of callable functions e.g. • initialisation • energy, gradient • kill • update • the particular set of functions being requested by a command option, usually theory= • Example evaluators (depends on locally available codes) • gamess, turbomole • dl_poly, charmm • mopac, mndo • hybrid • You can write your own in Tcl

  11. Module options, using the : The : syntax is used to pass control options to sub-module. e.g. when running the optimiser, to set the options for the module computing the energy and gradient. {} can be used if there is more than one argument to pass on. Nested structures are possible using Tcl lists newopt function=zopt : { theory=gamess : { basis=sto3g } zmatrix=z } gamess arguments Command zopt arguments newopt arguments

  12. 5 High End Computing and Benchmarking • Serial Applications Benchmarks • GAMESS-UK, DL_POLY • NWChem • Global Array (GA) Tools • Parallel Eigensolver (PeIGS) • GAMESS-UK • Parallel SCF, DFT, MP2 on MPP Systems (Cray T3E, IBM SP..) and commodity Beowulf systems • CRYSTAL98 • Periodic SCF • DL_POLY • MPP, Beowulf and ASCI performance • CHARMM • Myoglobin benchmark

  13. Scaling for Thrombin + Inhibitor (NAPAP) + Water Number of Nodes QM/MM Thrombin Benchmark QM/MM calculation on thrombin pocket: QM region (69 Atoms) is modelled by SCF 6-31G calculation (401 GTOs), total system size for the classical calculation is 16,659 atoms. QM/MM interaction was cut off at 15 angstroms using a neutral group scheme (leading to the inclusion in the QM calculation of 1507 classical centres).

More Related