From autodesk!smtpcc.autodesk.com!billgl@netcom.com Tue Jun 1 17:25:19 1993 Date: Tue, 01 Jun 93 13:54:57 PST From: billgl@smtpcc.autodesk.com To: hyperchem@autodesk.com, DESJARDI.S@fs.sciences.WLU.EDU Subject: Re: Normal Modes for MM Force Fields Status: RO >Is it possible using script commands to make Hyperchem perform a >normal mode analysis using a molecular mechanics force field such as >MM+ ? There is nothing quantum mechanical about normal mode >analysis, although I realize the results are better using a Born- >Oppenheimer surface. In particular, I would like to >perform a normal mode analysis on a small protein (904 atoms) to try >and identify the breathing modes. >S. Desjardins >Department of Chemistry >Washington and Lee University >Lexington, VA 24450 >(703) 463-8873 Dear Dr. Desjardins, You are quite right in saying that there is nothing quantum mechanical about a normal mode analysis, where the nuclear motions are treated as classical harmonic oscillators. Indeed, the problem begins with F=ma and results in 3N simultaneous linear differential equations. The eigenvalues (frequencies) and eigenvectors (normal modes) are obtained from diagonalizing the matrix of force constants, which are just the second derivatives of the energy with respect to mass-weighted coordinates. HyperChem uses a semiempirical quantum mechanical means to evaluate the energy and it's derivatives, but, in principle, the force constants could come from anywhere (molecular mechanics, DFT, tea leaves, etc.). Certainly, a semiempirical QM calculation of a 904 atom protein would be out of the question (I don't think that you could even get an SCF wavefunction to converge for such a beast). Although HyperChem has a relatively open architecture (> 300 variables may be passed into or out of HyperChem), there is currently no user control at the subroutine level. This means that you can't pass in force constants obtained through molecular mechanics into the normal mode subroutine. The solution is to write a Visual Basic application, if you are working under Windows, or a C routine if under UNIX, that does three things: (1) Calls HyperChem to perform a geometry optimization using an MM force field; (2) Calls HyperChem iteratively to obtain the second-derivative matrix using an MM force field (say AMBER) and (3) performs a normal mode analysis. Pseudocode Call HyperChem (do-geometry-optimization) do i=1,n do j=i,n Call HyperChem(evaluate single point MM energy at optimized geometry with i-th and j-th degree of freedom displaced by plus delta and minus delta) Fij = (E(i+delta) - 2*E(opt) + E(j+delta))/delta**2 enddo enddo Call matrix diagonalizer (input Fij, output frequencies and normal modes). It is best to work in Cartesian coordinates so that you do not have to use the G matrix technique (i.e., the kinetic energy terms are separable when expressed in xyz coordinate system). Choose delta to be on the order of the square root of your machine precision. Matrix diagonalizers are available from public domain (e.g., LINPACK from Oak Ridge or EISPACK from Argonne National labs). HyperChem does compute it's gradients analytically, but the vector of first derivatives is not made available to the user, so you must do double finite differencing. This is certainly not the most elegant solution, but it should work. Thank you for using the HyperChem Forum. Let me know if you have any other questions. Bill Glauser Scientific Modeling Division Autodesk, Inc. e-mail: billgl@autodesk.com voice: (707) 794-1995 ________________________________________________________________________ From organik.uni-erlangen.de!sauer@netcom.com Wed Jun 2 03:46:42 1993 From: Wolfgang Sauer Subject: calling HC from C To: hyperchem@autodesk.com (HyperChem MailExploder) Date: Wed, 2 Jun 93 8:53:16 METDST Status: RO Dear Netters, Bill Glauser wrote in his answer to a recent question: > > The solution is to write a Visual Basic application, if you are working under > Windows, or a C routine if under UNIX, that does three things: (1) Calls > ... > so far, I have seen it done with Excel macros and VB programs under Windows. But could somebody please supply me with sample code to interface HC from C under UNIX ? Thanks in advance, Wolfgang Sauer. -- +======================================+=====================================+ | Wolfgang Sauer | | | Institut fuer Organische Chemie I | "You have to be three standard | | Henkestr. 42, D-8520 Erlangen, FRG | deviations away from a normal | | | personality to like UNIX." | | sauer@organik.uni-erlangen.de | | | Tel.: 49/0 - 9131 - 85 - 2952 | Morris Jones (C&T) | | Fax: - 9132 | | +======================================+=====================================+ ! CHANGE OF GERMAN POSTCODES: WILL BE "D-91051" FROM 1 July 1993 ! +======================================+=====================================+ ________________________________________________________________________ From hyper!hurst@autodesk.com Thu Jun 3 19:15:21 1993 Date: Wed, 2 Jun 93 17:58:16 -0400 From: hyper!hurst@autodesk.com (Graham Hurst) To: autodesk!hyperchem@netcom.com Subject: Re: MM force field parameters Status: RO Steve Desjardins writes: > I would like to use hyperchem to investigate the dyanmics of > a rather dramatic approximation of proteins. In particular, I > represent the entire amino acid residue as a single "united atom". > (This is not new to me;it's called the residue reprresentation). In > order to have Hyperchem recognise these things I will have to modify > one of the molecular mechanics force fields to include these twenty > "superatoms". What would be the best approach? I was thinking of > simply assigning new parameters to the actinides/lanthanides so that > I could use the model builder. I have fortran code that performs > molecular dyanamics of these models, but it would be much easier to > do this with Hyperchem, because of the visualization and aqueous > solvent feaures of the MD options. Any suggestions? > > Steve Desjardins > Dept. of Chemistry > Washington and Lee University > Lexington, VA 24450 > (703) 464-1135 I assume that you mean using a one to one mapping between residues and rare-earth (or other) elements. Some suggestions: 1. Decide which force field to modify. Considerations are: o MM+ takes about 3-4 times as long as the others, due to the more complex functional form, particularly the exponential and dipole-dipole terms in the non-bonded treatment. It also requires N^2 storage, and the others don't. The bond dipoles may be a better approximation than point charges for your residue representation. o AMBER is the only one with a 12-10 (hydrogen bonding) interaction. This probably is irrelevant for you though. o BIO+ allows different vdW parameters for 1-4 interactions, but no scaling of 1-4 vdW interactions. o OPLS does not allow a distance dependent dielectric. 2. Add your new types and parameters for the chosen force field. I say *add* rather that *replace* so that you can still do "normal" calculations. (I would suggest making a new *parameter set* in chem.ini, and adding to renamed copies of the standard files for all but the type & mass parameter file.) Edit and compile the type rules to allow HyperChem to assign types for you (using your element <-> residue mapping that you add to the type rules). 3. Write (or contract us to write it for you!) a standalone or add-on application to convert a system from atom representation to your residue representation (using the recycled elements for residues). This could of course be done by hand (using HyperChem or editing a file) if you preferred. I can't immediately think of a better solution than 3 for switching to the residue representation, as HyperChem's united atom capabilities were intended only for hydrogens. Hope this helps, Graham ------------ Graham Hurst Hypercube Inc, 7-419 Phillip St, Waterloo, Ont, Canada N2L 3X2 (519)725-4040 internet: hurst@hyper.com ________________________________________________________________________ From hyper!hurst@autodesk.com Thu Jun 3 19:15:36 1993 Date: Wed, 2 Jun 93 16:36:00 -0400 From: hyper!hurst@autodesk.com (Graham Hurst) To: autodesk!hyperchem@netcom.com Subject: Re: calling HC from C Status: RO Wolfgang Sauer asks: > [...] > so far, I have seen it done with Excel macros and VB programs under Windows. > But could somebody please supply me with sample code to interface HC from C > under UNIX ? I don't have a sample at hand in C, but this is arguably simpler than using DDE in Windows. SGI HyperChem can accept message input and direct output via standard pipes. Applications started from HyperChem's script command "execute-client" have standard input and output pipes set up to HyperChem - the application can write (eg. via printf) script commands and read the omsgs (eg. via scanf). See page 246 of the HyperChem for UNIX reference manual for further details. Another related feature is that starting HyperChem for UNIX with the switch '-I -' lets you use your shell as a command line interface for HyperChem, where you can interactively send imsgs to HyperChem and get back omsgs (the switch is described on pgs 4 & 246). Although I don't have a C example, here is the C shell (csh) script that Tom Slee wrote to step a dihedral angle through user specified values (apologies to those readers who already have this from Tom). This script is provided strictly "as is", with no guarantees, and is used entirely at your own risk. Tom says "Feel free to hack this about as you wish, and use as you want." ===========================Cut here===================================== #!/bin/csh #----------------------------------------------------------------------- # # C Shell script for driving a torsion angle in HyperChem # # Version 1.0, August 25, 1992 # # Author: Tom Slee, Hypercube # #----------------------------------------------------------------------- # # Function # ======== # # This C Shell script carries out single point calculations or # restrained geometry optimizations at a user-defined set of # values of a selected torsion angle, and writes the angle and # corresponding energy together with descriptive information to # an output file, which is placed by default in HyperChem's # working directory. # The angles need to be set by editing this script, while # the user is prompted to select the torsion angle to be driven. # # Instructions # ============ # # To run this C Shell script, which we assume you have saved in a # file named torsion_driver, carry out the following procedure. # # 1) Make sure you have permission to execute this C Shell script, # typing chmod 755 torsion_driver if necessary, # # 2) Make a one-line HyperChem script (say torsion.scr) with # the line # execute-client {path}/torsion_driver # where {path} is the pathname of the directory in # which you have installed this file, # # 3) Alter the values of INITIAL, FINAL, INCREMENT and other # variables in this file. ALl the user-defined variables # are grouped together immediately following the comments, # # 4) Start up a copy of HyperChem with the command-line input # option, by typing # hyperchem -I - # # # 5) Choose torsion.scr from the dialog box presented by # the Open Script menu item, to execute this C shell # script. # # 6) For extra convenience, a line in your .chemrc file # change-user-menuitem 1,Torsion,{path}/torsion.scr # where {path} is the directory that the torsion.scr script # is located, will place the torsion driver into the scripts # menu automatically. # # Known problems # ============== # # 1) Any existing selection named "torsion" is overwritten, # # 2) The values of the variables INITIAL and FINAL must # be between -360 and 360, or -180 and 180 if OPTIMIZATION # is set to TRUE. # #----------------------------------------------------------------------- # # Define Constants # @ INITIAL = 0 # value in degrees @ FINAL = 90 # value in degrees @ INCREMENT = 45 # value in degrees set OUTFILE = outfile # name of file for output set OPTIMIZATION = FALSE # set to FALSE for single point calculations only. @ FORCE_CONSTANT = 100 # Force constant for constraint, used only if OPTIMIZATION = TRUE # # Initialise HyperChem settings # echo query-response-has-tag no # # Check for inconsistent input # echo query-value calculation-method set calculation_method = $< if ($OPTIMIZATION == TRUE && $calculation_method == SemiEmpirical) then echo error \"Optimization not compatible with semi-empirical calculation method. Setting method to Molecular Mechanics\" echo calculation-method molecularmechanics endif if (($INCREMENT <= 0 && $FINAL >= $INITIAL) || ($INCREMENT >= 0 && $FINAL <= $INITIAL)) then echo error \"Value of INCREMENT is incompatible with INITIAL and FINAL. Exiting Script. \" exit endif # # Prompt for torsion angle of choice # make_selection: echo query-value multiple-selections set multiple_selections = $< if ($multiple_selections == true) then echo multiple-selections no endif echo mouse-mode selecting echo request \"Select the torsion angle you wish to drive\" echo name-selection torsion if ($multiple_selections == true) then echo multiple-selections yes endif echo mouse-mode rotating echo query-value selected-atom-count set atom_count = $< if ($atom_count != 4) then echo error \"The selection must have four atoms\" echo select-none goto make_selection endif # # Echo descriptive information to output file # echo query-value current-file-name set file_name = $< echo Torsion driver calculations on file $file_name >> $OUTFILE echo The calculations employ a $calculation_method model >> $OUTFILE if ($calculation_method == SemiEmpirical) then echo query-value semi-empirical-method set method = $< else echo query-value molecular-mechanics-method set method = $< endif echo The method used is $method >> $OUTFILE if ($OPTIMIZATION != TRUE || $calculation_method == SemiEmpirical) then echo Single Point Calculations carried out >> $OUTFILE else echo Optimizations carried out >> $OUTFILE echo Force Constant = $FORCE_CONSTANT >> $OUTFILE endif echo Inital value = $INITIAL >> $OUTFILE echo Final value = $FINAL >> $OUTFILE echo Increment = $INCREMENT >> $OUTFILE # # Print headers for angle and energy columns # echo \(Degrees\) \\t \(kcal/mol\) >> $OUTFILE echo Angle \\t \\t Energy >> $OUTFILE echo ------------------------------ >> $OUTFILE # # Here we do the calculations # looping over torsion angles # echo selection-target atoms echo select-none echo do-qm-isosurface no echo do-qm-graph no @ torsion_angle = $INITIAL while ($torsion_angle <= $FINAL) echo select-name torsion echo set-bond-torsion $torsion_angle echo select-none if ($OPTIMIZATION != TRUE || $calculation_method == SemiEmpirical) then echo do-single-point else echo mechanics-constraint \(torsion $torsion_angle $FORCE_CONSTANT\) echo use-mechanics-constraint torsion Yes echo do-optimization echo use-no-mechanics-constraints echo do-single-point endif echo query-value total-energy set energy = $< echo $torsion_angle \\t \\t $energy >> $OUTFILE @ torsion_angle += $INCREMENT end echo status-message \"Calculations completed\" ===========================Cut here===================================== Hope this helps, Graham ------------ Graham Hurst Hypercube Inc, 7-419 Phillip St, Waterloo, Ont, Canada N2L 3X2 (519)725-4040 internet: hurst@hyper.com ________________________________________________________________________ From fs.sciences.WLU.EDU!DESJARDI.S@netcom.com Thu Jun 3 19:17:30 1993 To: hyperchem@autodesk.com From: DESJARDI.S@fs.sciences.WLU.EDU Organization: Washington & Lee University Date: 2 Jun 93 07:45:40 EDT Subject: MM force field parameters Status: RO I would like to use hyperchem to investigate the dyanmics of a rather dramatic approximation of proteins. In particular, I represent the entire amino acid residue as a single "united atom". (This is not new to me;it's called the residue reprresentation). In order to have Hyperchem recognise these things I will have to modify one of the molecular mechanics force fields to include these twenty "superatoms". What would be the best approach? I was thinking of simply assigning new parameters to the actinides/lanthanides so that I could use the model builder. I have fortran code that performs molecular dyanamics of these models, but it would be much easier to do this with Hyperchem, because of the visualization and aqueous solvent feaures of the MD options. Any suggestions? Steve Desjardins Dept. of Chemistry Washington and Lee University Lexington, VA 24450 (703) 464-1135 ________________________________________________________________________ From hyper!hurst@autodesk.com Fri Jun 4 17:23:41 1993 Date: Fri, 4 Jun 93 16:51:45 -0400 From: hyper!hurst@autodesk.com (Graham Hurst) To: DESJARDI.S@fs.sciences.WLU.EDU Subject: Custom software (was Re: MM force field parameters) Cc: autodesk!hyperchem@netcom.com Status: RO Hi Steve, Part of my reply to your request for suggestions of using a residue representation with HyperChem included: > > 3. Write (or contract us to write it for you!) a standalone or add-on > > application to convert a system from atom representation to your > > residue representation (using the recycled elements for residues). > > This could of course be done by hand (using HyperChem or editing a > > file) if you preferred. You replied: > I was not aware that you could be "contracted" to write code. What > would this involve? > > Steve As well as writing HyperChem (sold by Autodesk), Hypercube offers HyperChem training, scientific consulting, custom software development, and direct scientific support contracts. Contracting for custom software development would involve jointly coming up with a specification of the software to be developed, and agreeing on a price. The latter can be a fixed price or billed by time. For clarification, scientific support is separate from the HyperChem product support provided by dealers. The dealer's product support should answer questions about the operation of the product and scientific support is for help in using HyperChem to tackle scientific problems or advice about the computational chemistry that is implemented in HyperChem (directly from the developers). Thus if you want access to more computational chemistry expertise or intimate knowledge of HyperChem than your dealer provides directly, you should consider a scientific support contract with Hypercube. We see this as a valuable resource for users without other access to full-time molecular modellers or HyperChem experts - it includes unlimited telephone/fax/email support. These services are offered through HyperChem dealers, or if your dealer has choosen not to offer them you may contact: Dr. Tom Slee Director of Scientific Software Support Hypercube, Inc., 7-419 Phillip St., Waterloo, Ont., Canada N2L 3X2 Phone: (519) 725-4040 FAX: (519) 725-5193 email: info@hyper.com (this goes to more people than Tom) I hope you don't mind me cc'ing this to the HyperChem list, because I suspect many users are not yet aware of these services... Cheers, Graham ------------ Graham Hurst Hypercube Inc, 7-419 Phillip St, Waterloo, Ont, Canada N2L 3X2 (519)725-4040 internet: hurst@hyper.com ________________________________________________________________________ From biochemistry.cwru.edu!anderson@netcom.com Wed Jun 9 17:41:48 1993 From: "Vernon Anderson" Date: Wed, 9 Jun 93 16:23:52 EST To: hyperchem@autodesk.com Subject: solvent accessible surface calculations Status: RO Is there a Hyperchem script or a public domain PC program that will calculate solvent accessible surfaces from a crystal structure (preferably pdb file format)? -Vernon- 10900 Euclid Avenue Case Western Reserve University Cleveland, OH 44106-4935 216-368-2599, fax 216-368-4544 anderson@biochemistry.cwru.edu ________________________________________________________________________ From atp.biochem.su.oz.au!andrey@netcom.com Wed Jun 16 02:52:15 1993 Date: Wed Jun 16 16:10:44 1993 From: andrey@atp.biochem.su.oz.au To: hyperchem@autodesk.com Subject: Subscribe Reply-To: andrey@atp.biochem.su.oz.au Status: RO We are trying out the new HyperChem 3.0 and report that MNDO single point calculation on C60 (.hin file) took 35 mins. on our PC-486 (50MHz) while, our own MNDO program on the same system took only 7 min. for an identical calculation. Why is there such a difference? Also, we are on a network, with several very powerful machines. How can we use HyperChem to remote execute long jobs on these hosts - this would considerably improve HyperChem performance. Reply to: shoba@atp.biochem.su.oz.au ________________________________________________________________________ From pellucidar.pnl.gov!d3f012@netcom.com Wed Jun 16 13:39:11 1993 Date: Wed, 16 Jun 93 08:19:51 -0700 From: d3f012@pellucidar.pnl.gov Subject: MNDO speed comparison To: hyperchem@autodesk.com, andrey@atp.biochem.su.oz.au Cc: d3f012@pellucidar.pnl.gov Status: RO In addition to Tom Slee's comments let me add: To both Hyperchem and andrey@atp: How are you diagonalizing your matrices? Are you using 1) FORTRAN EISPACK routines? 2) diagonalizing code from Numerical Recipes? 3) Jacobi? I have found the code from #2 to be much slower than the implementation used in EISPACK. Also on the matrix diagonalization: is the code used by andrey@atp a home grown version or is it MOPAC or AMPAC? MOPAC uses a single-sweep Jacobi method that, in conjunction with some SCF converging optimizers they have, can give very fast SCF's... even faster than EISPACK routines. Is andrey@atp using LAPACK? Does there seem to be more disk activity on the Hyperchem version vs. your code? If Hyperchem is writing MNDO integrals to disk, or even saving the SCF vectors every cycle that can certainly slow down the code, especially on a PC, though I doubt that would account for the large time difference. Lastly, How do both of you calculate your MNDO 2-electron 2-center integrals? One way is to take advantage of symmetry in the local-frame as Dewar and Thiel do, calculate a greatly reduced subset of integrals that are then are transformed back into the global frame. The other way is to do a brute force point-point charge summation approach over all points in all multipoles in the global frame..which involves MANY more floating point operations and will be much slower. Are either of you using BLAS calls in your basic linear algebra routines? i.e. making density matrices, E=1/2TrP(H+F), that sort of thing... Here as well there is lots of room for performance differences. As Tom points out, there are lots of possible reasons (including which compiler/optimizations you use). If possible, I would like to find out answers to the above questions. I am very curious as to the large difference in timings. Mark Thompson ************************************************************************** Mark A. Thompson Sr. Research Scientist email: d3f012@pnlg.pnl.gov Molecular Science Research Center FAX : 509-375-6631 Pacific Northwest Laboratory voice: 509-375-6734 PO Box 999, Mail Stop K1-90 Richland, WA. 99352 Argus available via anonymous ftp from pnlg.pnl.gov (130.20.64.11) (in the argus directory). Download the README file first. Disclaimer: The views expressed in this message are solely my own and do not represent Battelle Memorial Institute, Pacific Northwest Laboratory, or any of its clients. ************************************************************************** ________________________________________________________________________ From UNMCVM.UNMC.EDU!MPANKASK@netcom.com Wed Jun 23 13:40:49 1993 Date: Wed, 23 Jun 93 10:53:00 CDT From: "Marvin C. Pankaskie --UNMCVM(MPANKASK)" Subject: Hyperchem 3.0 and MOL Files To: "Hyperchem User's Group" Status: RO FROM: Marvin C. Pankaskie --UNMCVM(MPANKASK) I have created several MOL files using Chemtext (version 1.4) and would like fo r Hyperchem to read them. I have tried opening a MOL file (choosing the MOL fo rmat from the dialog box) but receive an error indicating a problem reading lin e 5 of the MOL file (line 5 im my file is the first line of coordinates)! Is t here a problem reading old MOL files? How can I convert my MOL files to a forma t that Hyperchem can read? What is the correct format for MOL files? Thanks to anyone who can help. Marvin Pankaskie University of Nebraska Medical Center ________________________________________________________________________ From hyper!slee@autodesk.com Mon Jun 28 17:35:04 1993 From: hyper!slee@autodesk.com (Thomas Slee) Subject: Re: Hyperchem 3.0 and MOL Files To: autodesk!MPANKASK%UNMCVM.UNMC.EDU@netcom.com (Marvin C. Pankaskie --UNMCVM) Date: Mon, 28 Jun 93 16:00:28 EDT Cc: autodesk!hyperchem@netcom.com (HyperChem e-mail group) Status: RO Marvin C. Pankaskie --UNMCVM writes... | |FROM: Marvin C. Pankaskie --UNMCVM(MPANKASK) | |I have created several MOL files using Chemtext (version 1.4) and would like fo |r Hyperchem to read them. I have tried opening a MOL file (choosing the MOL fo |rmat from the dialog box) but receive an error indicating a problem reading lin |e 5 of the MOL file (line 5 im my file is the first line of coordinates)! Is t |here a problem reading old MOL files? How can I convert my MOL files to a forma |t that Hyperchem can read? What is the correct format for MOL files? | | Thanks to anyone who can help. | | Marvin Pankaskie | University of Nebraska Medical Center | Please e-mail a copy of the MOL file to me (slee@hyper.com) and I will see what I can find out. Tom -- Tom Slee Hypercube, Inc., #7-419 Phillip St., Waterloo, Ont. N2L 3X2 Internet: slee@hyper.com Tel. (519) 725-4040 ________________________________________________________________________ From ncsc.org!kmoore@netcom.com Mon Jun 28 19:45:08 1993 Date: Mon, 28 Jun 93 17:56:17 EDT From: Kevin Moore To: hyperchem@autodesk.com Subject: pdb file problem... Status: RO I am using the SGI release 2 version of hyperchem and cannot seem to get it to read in a pdb file which contains a protonated amine. Any ideas how to do this? Is this fixed in release 3? ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ || Kevin Moore North Carolina Supercomputing Center || || Scientific Support Analyst 3021 Cornwallis Rd. || || (919) 248-1179 Research Triangle Park, NC 27709 || ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++