This list is closed, nobody may subscribe to it.
| 2006 |
Jan
|
Feb
|
Mar
(7) |
Apr
(30) |
May
(42) |
Jun
(24) |
Jul
(17) |
Aug
(11) |
Sep
(37) |
Oct
(39) |
Nov
(17) |
Dec
(10) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(64) |
Feb
(90) |
Mar
(89) |
Apr
(24) |
May
(23) |
Jun
(44) |
Jul
(74) |
Aug
(40) |
Sep
(32) |
Oct
(31) |
Nov
(27) |
Dec
|
| 2008 |
Jan
|
Feb
(7) |
Mar
(10) |
Apr
(7) |
May
(16) |
Jun
(4) |
Jul
(8) |
Aug
|
Sep
(13) |
Oct
(6) |
Nov
|
Dec
|
| 2009 |
Jan
(1) |
Feb
(9) |
Mar
(5) |
Apr
(6) |
May
(5) |
Jun
(13) |
Jul
(11) |
Aug
(17) |
Sep
(3) |
Oct
(11) |
Nov
(9) |
Dec
(15) |
| 2010 |
Jan
(14) |
Feb
(15) |
Mar
(10) |
Apr
(14) |
May
|
Jun
(10) |
Jul
|
Aug
(12) |
Sep
(4) |
Oct
(3) |
Nov
|
Dec
(3) |
| 2011 |
Jan
(20) |
Feb
(7) |
Mar
(22) |
Apr
(14) |
May
(2) |
Jun
|
Jul
(13) |
Aug
(4) |
Sep
(1) |
Oct
|
Nov
(6) |
Dec
(3) |
| 2012 |
Jan
(7) |
Feb
(5) |
Mar
(7) |
Apr
(23) |
May
|
Jun
|
Jul
(5) |
Aug
|
Sep
(2) |
Oct
(12) |
Nov
(13) |
Dec
(3) |
| 2013 |
Jan
(8) |
Feb
(17) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(5) |
Sep
(6) |
Oct
(9) |
Nov
(5) |
Dec
(22) |
| 2014 |
Jan
(4) |
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
(3) |
Jul
|
Aug
(15) |
Sep
(3) |
Oct
(1) |
Nov
(18) |
Dec
|
| 2015 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
(7) |
Oct
|
Nov
(1) |
Dec
(1) |
| 2016 |
Jan
(1) |
Feb
(2) |
Mar
(3) |
Apr
(5) |
May
(3) |
Jun
(1) |
Jul
(3) |
Aug
(1) |
Sep
|
Oct
(3) |
Nov
(11) |
Dec
(12) |
| 2017 |
Jan
(4) |
Feb
(7) |
Mar
|
Apr
(5) |
May
(5) |
Jun
|
Jul
|
Aug
(5) |
Sep
(2) |
Oct
(3) |
Nov
(2) |
Dec
(1) |
| 2018 |
Jan
(1) |
Feb
(6) |
Mar
(17) |
Apr
(8) |
May
|
Jun
|
Jul
(2) |
Aug
(1) |
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
| 2019 |
Jan
(2) |
Feb
(5) |
Mar
(18) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2020 |
Jan
|
Feb
(1) |
Mar
(2) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2021 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
1
|
2
|
3
|
4
|
5
(1) |
6
|
|
7
(1) |
8
|
9
|
10
(1) |
11
(1) |
12
(5) |
13
(2) |
|
14
(1) |
15
|
16
|
17
|
18
(1) |
19
|
20
|
|
21
|
22
|
23
(1) |
24
|
25
(1) |
26
|
27
|
|
28
|
|
|
|
|
|
|
|
From: Noel O'B. <bao...@gm...> - 2010-02-25 15:56:57
|
---------- Forwarded message ---------- From: Paulo E. Abreu <pau...@ci...> Date: 25 February 2010 15:47 Subject: Re: [cclib-users] GAMESS-US and mpenergies To: Noel O'Boyle <bao...@gm...> Hiya Noel, Attached you will find a MP2 calculation on water. Parsing this file with cclib I get [GAMESS h2o-mp2.out INFO] Creating attribute atomcoords[] [GAMESS h2o-mp2.out INFO] Creating attribute atomnos[] [GAMESS h2o-mp2.out INFO] Creating attribute gbasis[] [GAMESS h2o-mp2.out INFO] Creating attribute nbasis: 19 [GAMESS h2o-mp2.out INFO] Creating attribute charge: 0 [GAMESS h2o-mp2.out INFO] Creating attribute mult: 1 [GAMESS h2o-mp2.out INFO] Creating attribute homos[] [GAMESS h2o-mp2.out INFO] Creating attribute natom: 3 [GAMESS h2o-mp2.out INFO] Creating attribute scftargets[] [GAMESS h2o-mp2.out INFO] Creating attribute scfvalues[] [GAMESS h2o-mp2.out INFO] Creating attribute scfenergies[] [GAMESS h2o-mp2.out INFO] Creating attribute moenergies[] [GAMESS h2o-mp2.out INFO] Creating attribute mosyms[] [GAMESS h2o-mp2.out INFO] Creating attribute nmo: 19 [GAMESS h2o-mp2.out INFO] Creating attribute mocoeffs[] [GAMESS h2o-mp2.out INFO] Creating attribute atombasis[] [GAMESS h2o-mp2.out INFO] Creating attribute aonames[] [GAMESS h2o-mp2.out INFO] Creating attribute coreelectrons[] No mpenergies are defined. And yes you can distribute this file. Hope this helps. Paulo On Thu, Feb 25, 2010 at 3:34 PM, Noel O'Boyle <bao...@gm...> wrote: > > Hello Paulo, > > Sounds like a bug. > > Could you provide us with a public domain test file? That is, this > should be a test file which you are happy for us to share with the > world. > > - Noel > > On 25 February 2010 12:16, Paulo E. Abreu <pau...@ci...> wrote: > > Hello, > > I have been using cclib for my parsers and just noticed something odd about > > GAMESS-US files with MP2 calculations. > > According to http://cclib.sourceforge.net/wiki/index.php/Parsed_Data and > > http://cclib.sourceforge.net/wiki/index.php/Mpenergies > > this is available for GAMESS-US output files. The problem is that I cannot > > access this information. The logging after parsing the file > > does not show any mpenergies and consequently when I try to use it I get an > > error > > AttributeError: 'ccData' object has no attribute 'mpenergies' > > Is there something which I am missing here ? > > ===begin code snippet > > myfile = ccopen("mp2.out") > > data = myfile.parse() > > print data.mpenergies > > ===end code snippet > > Thanks a lot > > -- > > Paulo E. Abreu > > Professor Auxiliar > > Departamento de Química > > Faculdade de Ciências e Tecnologia da Universidade de Coimbra > > > > ------------------------------------------------------------------------------ > > Download Intel® Parallel Studio Eval > > Try the new software tools for yourself. Speed compiling, find bugs > > proactively, and fine-tune applications for parallel performance. > > See why Intel Parallel Studio got high marks during beta. > > http://p.sf.net/sfu/intel-sw-dev > > _______________________________________________ > > cclib-users mailing list > > ccl...@li... > > https://lists.sourceforge.net/lists/listinfo/cclib-users > > > > -- Paulo E. Abreu Professor Auxiliar Departamento de Química Faculdade de Ciências e Tecnologia da Universidade de Coimbra |
|
From: Noel O'B. <bao...@gm...> - 2010-02-23 11:28:34
|
To get things moving, I've suddenly made a cclib-1.0a release directly from trunk. It probably breaks horribly, but I'll tidy it up and hopefully get a final out in the next week or two. - Noel |
|
From: Noel O'B. <bao...@gm...> - 2010-02-18 16:57:29
|
On 12 February 2010 15:00, Xaver Wurzenberger <xav...@we...> wrote: > Hi, > >> Yes. All of our test files are public domain. > > You might want to make that clear by putting a copyright/license txt file > there. Otherwise noone knows they can copy and use these files. Good idea - I'll do that. >> The test files we require are listed on >> http://cclib.sourceforge.net/wiki/index.php/Tests under point 1 of >> "Test Data". > > I can do this if you whish. > > Let me get this straight: > You want the following b3lyp/sto-3g calculations of 1,4-divinylbenzene with > C2h symmetry: > 1) A geometry optimisation, > 2) a single point calculation (restricted) > 3) another sp (unrestricted), > 4) a frequency calculation > 5) a TD-DFT calculation Yes - these are the files we want...but only if they are not already present (check SVN on the turbomole branch). > What does "and any variants of these which break the parser such as > symmetry/nosymmetry" mean, exactly? You can turn off symmetry perception in Gaussian, for example. If this breaks the parser, then it'd be useful to include an example test file for this case. > I guess te points 1), 4) and 5) are restricted calc's? Yes. > I have never done TD-DFT but will give it a shot if that's not too > complicated... > Xaver > > > Am Friday 12 February 2010 15:34:10 schrieben Sie: >> On 12 February 2010 13:56, Xaver Wurzenberger <xav...@we...> wrote: >> > Hello, >> > >> > I am interested about the current state and plans of the cclib test files >> > (suite). >> > >> > As I understand it, the SVN "data" folder contains the current >> > collection, and the contents of the "regressiontest.txt" lists the files >> > for regression testing (which do not contain the ORCA files, e. g.). The >> > SVN "data" files are all "public domain", right? Because I couldn't find >> > a copyright/license notice. >> >> Yes. All of our test files are public domain. If you run "./wget.sh" >> in the data directory, and then run "python regression.py", it will >> run through all of the files. >> >> > I saw there were once plans to merge this with the openBabel or >> > BlueObelisk data (comments on >> > http://baoilleach.blogspot.com/2009/06/ill-fix-bugbut-only-if-you-give-me >> >.html). Is this still planned? >> >> The maintainers of those repositories have not followed this up, but >> we are happy to work with them. >> >> > And last but not least, I am able to get my hands on (public domain ;-) ) >> > testfiles of turbomole and Gaussian 09. Interested? What would I need to >> > get you, exactly? >> >> We have Gaussian 09 already actually. We even have some Turbomole (see >> http://cclib.svn.sourceforge.net/viewvc/cclib/branches/turbomoleparser/data >>/Turbomole/). I'm not sure why the Turbomole code never made it into trunk >> though - it could be that we didn't have enough test files. The test files >> we require are listed on >> http://cclib.sourceforge.net/wiki/index.php/Tests under point 1 of >> "Test Data". >> >> > Regards, >> > Xaver >> > >> > ------------------------------------------------------------------------- >> >----- SOLARIS 10 is the OS for Data Centers - provides features such as >> > DTrace, Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW >> > http://p.sf.net/sfu/solaris-dev2dev >> > _______________________________________________ >> > cclib-devel mailing list >> > ccl...@li... >> > https://lists.sourceforge.net/lists/listinfo/cclib-devel > > > |
|
From: Noel O'B. <bao...@gm...> - 2010-02-14 17:39:39
|
Afraid not... On 13 February 2010 20:39, Adam Tenderholt <ate...@gm...> wrote: > Anyone know the status of the turbomole branch off the top of their head? I'm trying to hack together a script for a friend to read turbomole files and just wondering where it stands. > > Thanks, > > Adam > > > ------------------------------------------------------------------------------ > SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, > Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW > http://p.sf.net/sfu/solaris-dev2dev > _______________________________________________ > cclib-devel mailing list > ccl...@li... > https://lists.sourceforge.net/lists/listinfo/cclib-devel > |
|
From: Adam T. <ate...@gm...> - 2010-02-13 20:40:35
|
I'll go with vibmasses then. It ought to just be a 1D array corresponding to individual atoms since each mode is determined from the mass-weighted Hessian. Adam On Feb 12, 2010, at 1:37 AM, Noel O'Boyle wrote: > Sounds fine with me. masses is usually better than weights, but just > call it whatever is more common in the field. I'm guessing these > aren't simply the atomic masses of the elements, right, it's some sort > of 1D array for every vibration. Is there some relationship with the > cartesian displacement vectors? > > - Noel > > On 11 February 2010 18:24, Adam Tenderholt <ate...@gm...> wrote: >> I'm finding myself interested in having two new attributes in cclib: >> >> 1) vibweights (or vibmasses) -- the atomic masses used in calculating frequencies. Someone from my old lab wants me to extend a script used to calculate NRVS data (that depends upon cclib) to work with more than just Gaussian (i.e. MolPro). >> >> 2) nmrisos (and possibly nmranisos) -- NMR shielding tensors. >> >> Thoughts on attribute names? The first is something I'd like to hash out this weekend. The second is just something that I might find somewhat useful, but I'd probably only implement it for Gaussian unless others really have a need for it with other programs. >> >> Adam >> >> >> ------------------------------------------------------------------------------ >> SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, >> Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW >> http://p.sf.net/sfu/solaris-dev2dev >> _______________________________________________ >> cclib-devel mailing list >> ccl...@li... >> https://lists.sourceforge.net/lists/listinfo/cclib-devel >> |
|
From: Adam T. <ate...@gm...> - 2010-02-13 20:40:11
|
Anyone know the status of the turbomole branch off the top of their head? I'm trying to hack together a script for a friend to read turbomole files and just wondering where it stands. Thanks, Adam |
|
From: Xaver W. <xav...@we...> - 2010-02-12 15:34:31
|
Hi, > Yes. All of our test files are public domain. You might want to make that clear by putting a copyright/license txt file there. Otherwise noone knows they can copy and use these files. > The test files we require are listed on > http://cclib.sourceforge.net/wiki/index.php/Tests under point 1 of > "Test Data". I can do this if you whish. Let me get this straight: You want the following b3lyp/sto-3g calculations of 1,4-divinylbenzene with C2h symmetry: 1) A geometry optimisation, 2) a single point calculation (restricted) 3) another sp (unrestricted), 4) a frequency calculation 5) a TD-DFT calculation What does "and any variants of these which break the parser such as symmetry/nosymmetry" mean, exactly? I guess te points 1), 4) and 5) are restricted calc's? I have never done TD-DFT but will give it a shot if that's not too complicated... Xaver Am Friday 12 February 2010 15:34:10 schrieben Sie: > On 12 February 2010 13:56, Xaver Wurzenberger <xav...@we...> wrote: > > Hello, > > > > I am interested about the current state and plans of the cclib test files > > (suite). > > > > As I understand it, the SVN "data" folder contains the current > > collection, and the contents of the "regressiontest.txt" lists the files > > for regression testing (which do not contain the ORCA files, e. g.). The > > SVN "data" files are all "public domain", right? Because I couldn't find > > a copyright/license notice. > > Yes. All of our test files are public domain. If you run "./wget.sh" > in the data directory, and then run "python regression.py", it will > run through all of the files. > > > I saw there were once plans to merge this with the openBabel or > > BlueObelisk data (comments on > > http://baoilleach.blogspot.com/2009/06/ill-fix-bugbut-only-if-you-give-me > >.html). Is this still planned? > > The maintainers of those repositories have not followed this up, but > we are happy to work with them. > > > And last but not least, I am able to get my hands on (public domain ;-) ) > > testfiles of turbomole and Gaussian 09. Interested? What would I need to > > get you, exactly? > > We have Gaussian 09 already actually. We even have some Turbomole (see > http://cclib.svn.sourceforge.net/viewvc/cclib/branches/turbomoleparser/data >/Turbomole/). I'm not sure why the Turbomole code never made it into trunk > though - it could be that we didn't have enough test files. The test files > we require are listed on > http://cclib.sourceforge.net/wiki/index.php/Tests under point 1 of > "Test Data". > > > Regards, > > Xaver > > > > ------------------------------------------------------------------------- > >----- SOLARIS 10 is the OS for Data Centers - provides features such as > > DTrace, Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW > > http://p.sf.net/sfu/solaris-dev2dev > > _______________________________________________ > > cclib-devel mailing list > > ccl...@li... > > https://lists.sourceforge.net/lists/listinfo/cclib-devel |
|
From: Noel O'B. <bao...@gm...> - 2010-02-12 14:34:21
|
On 12 February 2010 13:56, Xaver Wurzenberger <xav...@we...> wrote: > Hello, > > I am interested about the current state and plans of the cclib test files > (suite). > > As I understand it, the SVN "data" folder contains the current collection, and > the contents of the "regressiontest.txt" lists the files for regression > testing (which do not contain the ORCA files, e. g.). The SVN "data" files > are all "public domain", right? Because I couldn't find a copyright/license > notice. Yes. All of our test files are public domain. If you run "./wget.sh" in the data directory, and then run "python regression.py", it will run through all of the files. > I saw there were once plans to merge this with the openBabel or BlueObelisk > data (comments on > http://baoilleach.blogspot.com/2009/06/ill-fix-bugbut-only-if-you-give-me.html). > Is this still planned? The maintainers of those repositories have not followed this up, but we are happy to work with them. > And last but not least, I am able to get my hands on (public domain ;-) ) > testfiles of turbomole and Gaussian 09. Interested? What would I need to get > you, exactly? We have Gaussian 09 already actually. We even have some Turbomole (see http://cclib.svn.sourceforge.net/viewvc/cclib/branches/turbomoleparser/data/Turbomole/). I'm not sure why the Turbomole code never made it into trunk though - it could be that we didn't have enough test files. The test files we require are listed on http://cclib.sourceforge.net/wiki/index.php/Tests under point 1 of "Test Data". > Regards, > Xaver > > ------------------------------------------------------------------------------ > SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, > Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW > http://p.sf.net/sfu/solaris-dev2dev > _______________________________________________ > cclib-devel mailing list > ccl...@li... > https://lists.sourceforge.net/lists/listinfo/cclib-devel > |
|
From: Xaver W. <xav...@we...> - 2010-02-12 13:58:19
|
Hello, I am interested about the current state and plans of the cclib test files (suite). As I understand it, the SVN "data" folder contains the current collection, and the contents of the "regressiontest.txt" lists the files for regression testing (which do not contain the ORCA files, e. g.). The SVN "data" files are all "public domain", right? Because I couldn't find a copyright/license notice. I saw there were once plans to merge this with the openBabel or BlueObelisk data (comments on http://baoilleach.blogspot.com/2009/06/ill-fix-bugbut-only-if-you-give-me.html). Is this still planned? And last but not least, I am able to get my hands on (public domain ;-) ) testfiles of turbomole and Gaussian 09. Interested? What would I need to get you, exactly? Regards, Xaver |
|
From: Noel O'B. <bao...@gm...> - 2010-02-12 09:51:58
|
Looks really good. Having the tests is great. I particularly like the way you stuck a full Hessian to vibfreq conversion in there. We might move this out to the algorithms at some point to make it more widely available. I'll try to do the patch this weekend. Feel free to contribute incognito, but I'm wondering who exactly do we owe this code to. Google isn't exactly helpful in this case. :-) - Noel On 10 February 2010 03:28, Matt W <pb...@gm...> wrote: > Hi Noel, > Attached is a patch file against rev 881. I actually generated it with > mercurial, so the -p1 option is needed with patch. Molpro seems to use > atomic units (Hartrees/Bohr^2) for the Hessian, and the Molpro parser > doesn't do any conversion. Gaussian uses the same units, so I also didn't > do any conversion, although units of eV/Angstrom^2 would seem to be more > consistent with other cclib quantities. > > I noticed that the Molpro parser was reading in atomic masses but they > weren't being made public, so I changed that (in data.py) and wrote a test > (testhess.py) that compares the vib freqs calculated from the Hessian and > the masses to the freqs read in directly from the Gaussian or Molpro file. > One strange thing is that Molpro prints abundance averaged atomic weights by > default, while Gaussian prints relative atomic (isotopic) masses (carbon-12 > = 12 exactly). If you'd rather not have the additional changes, the part of > the patch against gaussianparser.py is fine on its own. > > Best Regards, > > Matt White > > On Sun, Feb 7, 2010 at 7:16 AM, Noel O'Boyle <bao...@gm...> wrote: >> >> Hi Matt, >> >> Sounds good. If you could send a patch to this list, we can take a >> look. We already have some hessian code somewhere (I think?) so we >> will need to make sure that the units are standardised and so forth. >> >> If you checked our code out of subversion, "svn diff" will create the >> patch. Otherwise, use "diff -u oldfile newfile > a.patch". If all else >> fails, just attach the modified file. >> >> - Noel >> >> On 5 February 2010 06:26, Matt W <pb...@gm...> wrote: >> > Hello all, >> > I recently wrote a short bit of code for cclib to read the Hessian >> > from a >> > Gaussian output file. If there is interest in adding this to the >> > project, >> > what is the best way to submit it? >> > >> > Best Regards, >> > >> > Matt W >> > >> > >> > >> > >> > ------------------------------------------------------------------------------ >> > The Planet: dedicated and managed hosting, cloud storage, colocation >> > Stay online with enterprise data centers and the best network in the >> > business >> > Choose flexible plans and management services without long-term >> > contracts >> > Personal 24x7 support from experience hosting pros just a phone call >> > away. >> > http://p.sf.net/sfu/theplanet-com >> > _______________________________________________ >> > cclib-devel mailing list >> > ccl...@li... >> > https://lists.sourceforge.net/lists/listinfo/cclib-devel >> > >> > > > > ------------------------------------------------------------------------------ > SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, > Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW > http://p.sf.net/sfu/solaris-dev2dev > _______________________________________________ > cclib-devel mailing list > ccl...@li... > https://lists.sourceforge.net/lists/listinfo/cclib-devel > > |
|
From: Noel O'B. <bao...@gm...> - 2010-02-12 09:37:32
|
Sounds fine with me. masses is usually better than weights, but just call it whatever is more common in the field. I'm guessing these aren't simply the atomic masses of the elements, right, it's some sort of 1D array for every vibration. Is there some relationship with the cartesian displacement vectors? - Noel On 11 February 2010 18:24, Adam Tenderholt <ate...@gm...> wrote: > I'm finding myself interested in having two new attributes in cclib: > > 1) vibweights (or vibmasses) -- the atomic masses used in calculating frequencies. Someone from my old lab wants me to extend a script used to calculate NRVS data (that depends upon cclib) to work with more than just Gaussian (i.e. MolPro). > > 2) nmrisos (and possibly nmranisos) -- NMR shielding tensors. > > Thoughts on attribute names? The first is something I'd like to hash out this weekend. The second is just something that I might find somewhat useful, but I'd probably only implement it for Gaussian unless others really have a need for it with other programs. > > Adam > > > ------------------------------------------------------------------------------ > SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, > Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW > http://p.sf.net/sfu/solaris-dev2dev > _______________________________________________ > cclib-devel mailing list > ccl...@li... > https://lists.sourceforge.net/lists/listinfo/cclib-devel > |
|
From: Adam T. <ate...@gm...> - 2010-02-11 18:41:43
|
I'm finding myself interested in having two new attributes in cclib: 1) vibweights (or vibmasses) -- the atomic masses used in calculating frequencies. Someone from my old lab wants me to extend a script used to calculate NRVS data (that depends upon cclib) to work with more than just Gaussian (i.e. MolPro). 2) nmrisos (and possibly nmranisos) -- NMR shielding tensors. Thoughts on attribute names? The first is something I'd like to hash out this weekend. The second is just something that I might find somewhat useful, but I'd probably only implement it for Gaussian unless others really have a need for it with other programs. Adam |
|
From: Matt W <pb...@gm...> - 2010-02-10 03:28:30
|
diff -r 881155faef88 -r 7456e8b3840b src/cclib/parser/data.py
--- a/src/cclib/parser/data.py
+++ b/src/cclib/parser/data.py
@@ -69,7 +69,7 @@
"""
# Names of all supported attributes.
- self._attrlist = ['aonames', 'aooverlaps', 'atombasis',
+ self._attrlist = ['amass', 'aonames', 'aooverlaps', 'atombasis',
'atomcoords', 'atomnos',
'ccenergies', 'charge', 'coreelectrons',
'etenergies', 'etoscs', 'etrotats', 'etsecs', 'etsyms',
@@ -82,7 +82,8 @@
'vibdisps', 'vibfreqs', 'vibirs', 'vibramans', 'vibsyms']
# The expected types for all supported attributes.
- self._attrtypes = { "aonames": list,
+ self._attrtypes = { "amass": numpy.ndarray,
+ "aonames": list,
"aooverlaps": numpy.ndarray,
"atombasis": list,
"atomcoords": numpy.ndarray,
diff -r 881155faef88 -r 7456e8b3840b src/cclib/parser/gaussianparser.py
--- a/src/cclib/parser/gaussianparser.py
+++ b/src/cclib/parser/gaussianparser.py
@@ -969,6 +969,58 @@
if line[1:7] == "ONIOM:":
self.oniom = True
+ # Read in entire archive section, then extract Hessian if present
+ # The lower-triangular part of the Hessian is returned flattened.
+ # To convert to a 3N x 3N rank 2 matrix:
+ # hess = numpy.zeros([3N,3N]); hess[numpy.tril_indices(3N)] = data.hessian
+ # The archive section is the only place the Hessian is found unless
+ # additional print ("p") was specified in the Gaussian input file
+ # Under Windows, Gaussian uses "|" instead of "\" as separator
+ # in archive section
+ if line[1:5] == "1|1|" or line[1:5] == "1\\1\\":
+
+ self.updateprogress(inputfile, "Archive Section", self.fupdate)
+ arcsep = line[4];
+ arcstr = ""
+ # archive section is terminated by "||@", but just look for
+ # blank line following
+ while line.strip():
+ arcstr += line.strip()
+ line = inputfile.next()
+ # sections separated by "||"
+ arcsects = arcstr.split(arcsep + arcsep)
+
+ # Section immediately preceeding Hessian ends with "NImag=<int>"
+ # Note that output file may contain multiple archive sections (e.g.,
+ # for an opt + freq job, Hessian is in 2nd one).
+ for ii in range(len(arcsects)):
+ if arcsects[ii].find("NImag=") > -1:
+ self.hessian = map(float, arcsects[ii+1].split(","))
+
+ # Atomic masses: In "Isotopes and Nuclear Properties:" section if
+ # additional print ("p") is on, otherwise only present if freq job
+ # (in Thermochemistry section).
+ # The "Isotopes and Nuclear Properties:" section may appear more than
+ # once (e.g opt + freq job); this code will yield values from the final one
+ if line.find("Isotopes and Nuclear Properties") > -1:
+ self.amass = []
+
+ if line[1:8] == "AtmWgt=":
+ self.amass += map(float, line.split()[1:])
+
+ # Get mass from Thermochemistry section if we haven't found it yet
+ # looking for "Atom 1 has atomic number x and mass y"; space
+ # between "Atom" and "1" is different in G03 and G09
+ if line.find("1 has atomic number") > -1 and not hasattr(self, "amass"):
+ self.amass = []
+ broken = line.split()
+ # no blank line following, so use len(split()) to detect end
+ while len(broken) == 9:
+ self.amass.append(float(broken[8]))
+ line = inputfile.next()
+ broken = line.split()
+
+
if __name__ == "__main__":
import doctest, gaussianparser
doctest.testmod(gaussianparser, verbose=False)
diff -r 881155faef88 -r 7456e8b3840b test/testdata
--- a/test/testdata
+++ b/test/testdata
@@ -100,3 +100,7 @@
vib Molpro MolproIRTest basicMolpro2006 dvb_ir.out dvb_ir.log
vib ORCA OrcaIRTest basicORCA2.6 dvb_ir.out
vib ORCA OrcaRamanTest basicORCA2.6 dvb_raman.out
+
+hess Gaussian Gaussian03HessTest basicGaussian03 dvb_ir.out
+hess Gaussian Gaussian09HessTest basicGaussian09 dvb_raman.log
+hess Molpro MolproHessTest basicMolpro2006 dvb_ir.out dvb_ir.log
diff -r 881155faef88 -r 7456e8b3840b test/testhess.py
--- /dev/null
+++ b/test/testhess.py
@@ -0,0 +1,67 @@
+__revision__ = "$Revision$"
+
+import numpy
+import bettertest
+
+
+class GenericHessTest(bettertest.TestCase):
+ """Generic Hessian unittest."""
+
+ def modes_from_hess(self, flathess, mass, units=5140.4872066):
+ """ Calculate normal mode freqs (in 1/cm) and vectors from hessian.
+ Default units=5140.4872066 assumes Hessian in Hartree/Bohr^2 and mass
+ in amu (12C := 12 amu) """
+
+ # get full Hessian as square matrix
+ N = 3*len(mass); # number of modes
+ hess = numpy.zeros((N,N))
+ # trilidx = numpy.where(numpy.tril(numpy.ones((hdim,hdim),int),0) != 0) # NumPy 1.3
+ hess[numpy.tril_indices(N)] = flathess
+ # fill in upper triangle
+ hess = hess.transpose()
+ hess[numpy.tril_indices(N)] = flathess
+
+ # create mass weighting matrix - repeat for x,y,z
+ invrootmass = numpy.repeat(1/numpy.sqrt(numpy.array(mass)), 3)
+ # for weighing hessian
+ ivmassouter = numpy.outer(invrootmass, invrootmass)
+ # we need a column vector for scaling normal modes all at once
+ invrootmass = numpy.reshape(invrootmass, (-1,1))
+
+ # Perform mass-weighting and diagonalize to get normal modes
+ freq, modes = numpy.linalg.eigh(hess * ivmassouter)
+ # convert freqs to 1/cm
+ freq = numpy.sign(freq) * numpy.sqrt(numpy.abs(freq)) * units
+
+ # scale and renormalize eigenvectors
+ modes = modes * invrootmass
+ modes = numpy.transpose(modes/numpy.sqrt(numpy.sum(modes**2, 0)))
+ # after reshape, indicies are (<mode number>, <atom number>, X, Y, or Z)
+ modes = numpy.reshape(modes, (N, N/3, 3))
+ # The LAPACK routine used by numpy's eigh() always returns eigenvalues in
+ # ascending order, so we can safely assume the first 6 modes are the zero
+ # freq modes. This only works for a PES minimum, not a transition state
+ return freq[6:], modes[6:]
+
+ def testfreqval(self):
+ """ Do the vibfreqs read directly match those calculated from the Hessian within +/-0.1/cm? """
+ freqs, modes = self.modes_from_hess(self.data.hessian, self.data.amass)
+ self.assertEqual(len(self.data.vibfreqs), len(freqs))
+ for delta in (self.data.vibfreqs - freqs):
+ self.assertInside(delta, 0, 0.1)
+
+
+class Gaussian03HessTest(GenericHessTest):
+ """Gaussian 03 Hessian unittest."""
+
+class Gaussian09HessTest(GenericHessTest):
+ """Gaussian 09 Hessian unittest."""
+
+class MolproHessTest(GenericHessTest):
+ """Molpro Hessian unittest."""
+
+
+if __name__=="__main__":
+
+ from testall import testall
+ testall(modules=["hess"])
|
|
From: Noel O'B. <bao...@gm...> - 2010-02-07 15:16:18
|
Hi Matt, Sounds good. If you could send a patch to this list, we can take a look. We already have some hessian code somewhere (I think?) so we will need to make sure that the units are standardised and so forth. If you checked our code out of subversion, "svn diff" will create the patch. Otherwise, use "diff -u oldfile newfile > a.patch". If all else fails, just attach the modified file. - Noel On 5 February 2010 06:26, Matt W <pb...@gm...> wrote: > Hello all, > I recently wrote a short bit of code for cclib to read the Hessian from a > Gaussian output file. If there is interest in adding this to the project, > what is the best way to submit it? > > Best Regards, > > Matt W > > > > ------------------------------------------------------------------------------ > The Planet: dedicated and managed hosting, cloud storage, colocation > Stay online with enterprise data centers and the best network in the > business > Choose flexible plans and management services without long-term contracts > Personal 24x7 support from experience hosting pros just a phone call away. > http://p.sf.net/sfu/theplanet-com > _______________________________________________ > cclib-devel mailing list > ccl...@li... > https://lists.sourceforge.net/lists/listinfo/cclib-devel > > |
|
From: Matt W <pb...@gm...> - 2010-02-05 06:26:14
|
Hello all, I recently wrote a short bit of code for cclib to read the Hessian from a Gaussian output file. If there is interest in adding this to the project, what is the best way to submit it? Best Regards, Matt W |