Revisão | e8dcd62820f4846e3aa39519c83d975f5d5fd803 (tree) |
---|---|
Hora | 2012-06-01 22:02:35 |
Autor | Mikiya Fujii <mikiya.fujii@gmai...> |
Commiter | Mikiya Fujii |
rMatFirstDeri is renamed to rMatFirstDerivatives for distinguish second derivatives. #28554
git-svn-id: https://svn.sourceforge.jp/svnroot/molds/trunk@690 1136aad2-a195-0410-b898-f5ea1d11b9d8
@@ -4567,12 +4567,12 @@ void Cndo2::CalcRotatingMatrix(double** rotatingMatrix, | ||
4567 | 4567 | // This method can not calculate d-orbital yet. |
4568 | 4568 | // For rotating matirxi, see J. Mol. Struc. (Theochem), 419, 19 (1997) (ref. [BFB_1997]) |
4569 | 4569 | // we set gamma=0 always. |
4570 | -void Cndo2::CalcRotatingMatrixFirstDerivatives(double*** rMatFirstDeri, | |
4570 | +void Cndo2::CalcRotatingMatrixFirstDerivatives(double*** rotMatFirstDerivatives, | |
4571 | 4571 | const Atom& atomA, |
4572 | 4572 | const Atom& atomB) const{ |
4573 | 4573 | |
4574 | 4574 | MallocerFreer::GetInstance()->Initialize<double>( |
4575 | - rMatFirstDeri, | |
4575 | + rotMatFirstDerivatives, | |
4576 | 4576 | OrbitalType_end, |
4577 | 4577 | OrbitalType_end, |
4578 | 4578 | CartesianType_end); |
@@ -4584,48 +4584,48 @@ void Cndo2::CalcRotatingMatrixFirstDerivatives(double*** rMatFirstDeri, | ||
4584 | 4584 | double R = sqrt( pow(x,2.0) + pow(y,2.0) + pow(z,2.0) ); |
4585 | 4585 | |
4586 | 4586 | // for s-function |
4587 | - rMatFirstDeri[s][s][XAxis] = 0.0; | |
4588 | - rMatFirstDeri[s][s][YAxis] = 0.0; | |
4589 | - rMatFirstDeri[s][s][ZAxis] = 0.0; | |
4587 | + rotMatFirstDerivatives[s][s][XAxis] = 0.0; | |
4588 | + rotMatFirstDerivatives[s][s][YAxis] = 0.0; | |
4589 | + rotMatFirstDerivatives[s][s][ZAxis] = 0.0; | |
4590 | 4590 | |
4591 | 4591 | // for p-function |
4592 | - rMatFirstDeri[py][py][XAxis] = -1.0/r + pow(x,2.0)/pow(r,3.0); | |
4593 | - rMatFirstDeri[py][pz][XAxis] = x*y/pow(R,3.0); | |
4594 | - rMatFirstDeri[py][px][XAxis] = (1.0/(pow(r,3.0)*R) + 1.0/(pow(R,3.0)*r))*x*y*z; | |
4592 | + rotMatFirstDerivatives[py][py][XAxis] = -1.0/r + pow(x,2.0)/pow(r,3.0); | |
4593 | + rotMatFirstDerivatives[py][pz][XAxis] = x*y/pow(R,3.0); | |
4594 | + rotMatFirstDerivatives[py][px][XAxis] = (1.0/(pow(r,3.0)*R) + 1.0/(pow(R,3.0)*r))*x*y*z; | |
4595 | 4595 | |
4596 | - rMatFirstDeri[pz][py][XAxis] = 0.0; | |
4597 | - rMatFirstDeri[pz][pz][XAxis] = x*z/pow(R,3.0); | |
4598 | - rMatFirstDeri[pz][px][XAxis] = x/(r*R) - x*r/pow(R,3.0); | |
4596 | + rotMatFirstDerivatives[pz][py][XAxis] = 0.0; | |
4597 | + rotMatFirstDerivatives[pz][pz][XAxis] = x*z/pow(R,3.0); | |
4598 | + rotMatFirstDerivatives[pz][px][XAxis] = x/(r*R) - x*r/pow(R,3.0); | |
4599 | 4599 | |
4600 | - rMatFirstDeri[px][py][XAxis] = -1.0*x*y/pow(r,3.0); | |
4601 | - rMatFirstDeri[px][pz][XAxis] = -1.0/R + x*x/pow(R,3.0); | |
4602 | - rMatFirstDeri[px][px][XAxis] = -1.0*z/(r*R) + | |
4600 | + rotMatFirstDerivatives[px][py][XAxis] = -1.0*x*y/pow(r,3.0); | |
4601 | + rotMatFirstDerivatives[px][pz][XAxis] = -1.0/R + x*x/pow(R,3.0); | |
4602 | + rotMatFirstDerivatives[px][px][XAxis] = -1.0*z/(r*R) + | |
4603 | 4603 | (1.0/(pow(r,3.0)*R) + 1.0/(pow(R,3.0)*r))*x*x*z; |
4604 | 4604 | |
4605 | - rMatFirstDeri[py][py][YAxis] = x*y/pow(r,3.0); | |
4606 | - rMatFirstDeri[py][pz][YAxis] = -1.0/R + y*y/pow(R,3.0); | |
4607 | - rMatFirstDeri[py][px][YAxis] = -1.0*z/(r*R) + | |
4605 | + rotMatFirstDerivatives[py][py][YAxis] = x*y/pow(r,3.0); | |
4606 | + rotMatFirstDerivatives[py][pz][YAxis] = -1.0/R + y*y/pow(R,3.0); | |
4607 | + rotMatFirstDerivatives[py][px][YAxis] = -1.0*z/(r*R) + | |
4608 | 4608 | (1.0/(pow(r,3.0)*R) + 1.0/(pow(R,3.0)*r))*y*y*z; |
4609 | 4609 | |
4610 | - rMatFirstDeri[pz][py][YAxis] = 0.0; | |
4611 | - rMatFirstDeri[pz][pz][YAxis] = y*z/pow(R,3.0); | |
4612 | - rMatFirstDeri[pz][px][YAxis] = y/(r*R) - y*r/pow(R,3.0); | |
4610 | + rotMatFirstDerivatives[pz][py][YAxis] = 0.0; | |
4611 | + rotMatFirstDerivatives[pz][pz][YAxis] = y*z/pow(R,3.0); | |
4612 | + rotMatFirstDerivatives[pz][px][YAxis] = y/(r*R) - y*r/pow(R,3.0); | |
4613 | 4613 | |
4614 | - rMatFirstDeri[px][py][YAxis] = 1.0/r - y*y/pow(r,3.0); | |
4615 | - rMatFirstDeri[px][pz][YAxis] = x*y/pow(R,3.0); | |
4616 | - rMatFirstDeri[px][px][YAxis] = (1.0/(pow(r,3.0)*R) + 1.0/(pow(R,3.0)*r))*x*y*z; | |
4614 | + rotMatFirstDerivatives[px][py][YAxis] = 1.0/r - y*y/pow(r,3.0); | |
4615 | + rotMatFirstDerivatives[px][pz][YAxis] = x*y/pow(R,3.0); | |
4616 | + rotMatFirstDerivatives[px][px][YAxis] = (1.0/(pow(r,3.0)*R) + 1.0/(pow(R,3.0)*r))*x*y*z; | |
4617 | 4617 | |
4618 | - rMatFirstDeri[py][py][ZAxis] = 0.0; | |
4619 | - rMatFirstDeri[py][pz][ZAxis] = y*z/pow(R,3.0); | |
4620 | - rMatFirstDeri[py][px][ZAxis] = -1.0*y/(r*R) + y*z*z/(r*pow(R,3.0)); | |
4618 | + rotMatFirstDerivatives[py][py][ZAxis] = 0.0; | |
4619 | + rotMatFirstDerivatives[py][pz][ZAxis] = y*z/pow(R,3.0); | |
4620 | + rotMatFirstDerivatives[py][px][ZAxis] = -1.0*y/(r*R) + y*z*z/(r*pow(R,3.0)); | |
4621 | 4621 | |
4622 | - rMatFirstDeri[pz][py][ZAxis] = 0.0; | |
4623 | - rMatFirstDeri[pz][pz][ZAxis] = -1.0/R + z*z/pow(R,3.0); | |
4624 | - rMatFirstDeri[pz][px][ZAxis] = -1.0*z*r/pow(R,3.0); | |
4622 | + rotMatFirstDerivatives[pz][py][ZAxis] = 0.0; | |
4623 | + rotMatFirstDerivatives[pz][pz][ZAxis] = -1.0/R + z*z/pow(R,3.0); | |
4624 | + rotMatFirstDerivatives[pz][px][ZAxis] = -1.0*z*r/pow(R,3.0); | |
4625 | 4625 | |
4626 | - rMatFirstDeri[px][py][ZAxis] = 0.0; | |
4627 | - rMatFirstDeri[px][pz][ZAxis] = x*z/pow(R,3.0); | |
4628 | - rMatFirstDeri[px][px][ZAxis] = -1.0*x/(r*R) + x*z*z/(r*pow(R,3.0)); | |
4626 | + rotMatFirstDerivatives[px][py][ZAxis] = 0.0; | |
4627 | + rotMatFirstDerivatives[px][pz][ZAxis] = x*z/pow(R,3.0); | |
4628 | + rotMatFirstDerivatives[px][px][ZAxis] = -1.0*x/(r*R) + x*z*z/(r*pow(R,3.0)); | |
4629 | 4629 | |
4630 | 4630 | // for d-function |
4631 | 4631 | // ToDo: First derivative of rotating matrix for d-orbital... |