• R/O
  • HTTP
  • SSH
  • HTTPS

提交

标签
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Commit MetaInfo

修订版d26cc3bdc66543d1066f850a7d74de562360fdd8 (tree)
时间2010-12-08 17:16:30
作者Mikiya Fujii <mikiya.fujii@gmai...>
CommiterMikiya Fujii

Log Message

Modification for zindo is carried out.

git-svn-id: https://svn.sourceforge.jp/svnroot/molds/MolDS/trunk@14 1136aad2-a195-0410-b898-f5ea1d11b9d8

更改概述

差异

--- a/src/base/atoms/Satom.h
+++ b/src/base/atoms/Satom.h
@@ -20,11 +20,14 @@ Satom::Satom(double x, double y, double z) : Atom(x, y, z){
2020 this->valence.push_back(py);
2121 this->valence.push_back(pz);
2222 this->valence.push_back(px);
23- this->valence.push_back(dxy);
24- this->valence.push_back(dyz);
25- this->valence.push_back(dzz);
26- this->valence.push_back(dzx);
27- this->valence.push_back(dxxyy);
23+ if(Parameters::GetInstance()->GetCurrentTheory() == CNDO2 ||
24+ Parameters::GetInstance()->GetCurrentTheory() == INDO){
25+ this->valence.push_back(dxy);
26+ this->valence.push_back(dyz);
27+ this->valence.push_back(dzz);
28+ this->valence.push_back(dzx);
29+ this->valence.push_back(dxxyy);
30+ }
2831 this->bondingParameter = -18.150*Parameters::GetInstance()->GetEV2AU();
2932 this->coreCharge = 6.0;
3033 this->imuAmuS = 17.650*Parameters::GetInstance()->GetEV2AU();
--- a/src/cndo/Cndo2.h
+++ b/src/cndo/Cndo2.h
@@ -55,7 +55,6 @@ private:
5555 Molecule* molecule, double** fockMatrix);
5656 void CalcAtomicElectronPopulation(double* atomicElectronPopulation,
5757 double** orbitalElectronPopulation, Molecule* molecule);
58- void CalcGammaAB(double** gammaAB, Molecule* molecule);
5958 void CalcOverlap(double** overlap, Molecule* molecule);
6059 void CalcRotatingMatrix(double** rotatingMatrix, Atom* atomA, Atom* atomB);
6160 void CalcDiatomicOverlapInDiatomicFrame(double** diatomicOverlap, Atom* atomA, Atom* atomB);
@@ -82,6 +81,7 @@ protected:
8281 string messageStartSCF;
8382 string messageDoneSCF;
8483 vector<AtomType> enableAtomTypes;
84+ virtual void CalcGammaAB(double** gammaAB, Molecule* molecule);
8585 virtual void SetMessages();
8686 virtual void SetEnableAtomTypes();
8787 virtual double GetFockDiagElement(Atom* atomA, int atomAIndex, int firstAOIndexA,
@@ -92,6 +92,7 @@ protected:
9292 int firstAOIndexA, int firstAOIndexB,
9393 int mu, int nu, Molecule* molecule, double** gammaAB, double** overlap,
9494 double** orbitalElectronPopulation, bool isGuess);
95+ TheoryType theory;
9596 public:
9697 Cndo2();
9798 ~Cndo2();
@@ -100,6 +101,7 @@ public:
100101 };
101102
102103 Cndo2::Cndo2(){
104+ this->theory = CNDO2;
103105 this->SetMessages();
104106 this->SetEnableAtomTypes();
105107 //cout << "Cndo created\n";
@@ -197,8 +199,10 @@ void Cndo2::SetMolecule(Molecule* molecule){
197199
198200 // set molecule and malloc
199201 this->molecule = molecule;
200- this->gammaAB = MallocerFreer::GetInstance()->MallocDoubleMatrix2d
201- (this->molecule->GetAtomVect()->size(), this->molecule->GetAtomVect()->size());
202+ if(this->theory == CNDO2 || this->theory == INDO){
203+ this->gammaAB = MallocerFreer::GetInstance()->MallocDoubleMatrix2d
204+ (this->molecule->GetAtomVect()->size(), this->molecule->GetAtomVect()->size());
205+ }
202206 this->overlap = MallocerFreer::GetInstance()->MallocDoubleMatrix2d
203207 (this->molecule->GetTotalNumberAOs(), this->molecule->GetTotalNumberAOs());
204208 this->orbitalElectronPopulation = MallocerFreer::GetInstance()->MallocDoubleMatrix2d
--- a/src/indo/Indo.h
+++ b/src/indo/Indo.h
@@ -35,6 +35,7 @@ protected:
3535 };
3636
3737 Indo::Indo() : MolDS_cndo::Cndo2(){
38+ this->theory = INDO;
3839 this->SetMessages();
3940 this->SetEnableAtomTypes();
4041 //cout << "Indo created\n";