Scine::Sparrow  5.1.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
IntensitiesCalculator.h
Go to the documentation of this file.
1 
8 #ifndef RTSPECTROSCOPY_INTENSITIESCALCULATOR_H
9 #define RTSPECTROSCOPY_INTENSITIESCALCULATOR_H
10 
11 #include <Utils/Typenames.h>
12 #include <Eigen/Core>
13 #include <vector>
14 
15 namespace Scine {
16 namespace Sparrow {
17 namespace RealTimeSpectroscopy {
18 
20  public:
21  const Eigen::VectorXd getAdsorptionCoefficients() const;
22  void setSquaredNormalDipoleGradient(const Eigen::VectorXd& newSquaredNormalDipoleGradient);
23  static Eigen::VectorXd transformCartesianToSquaredNormalDipoleGradient(const Eigen::MatrixXd& massWeightedEigenvectors,
24  const Eigen::MatrixX3d& cartesianDipoleMoment,
25  const std::vector<double>& masses);
26 
27  Eigen::VectorXd calculateRelativeVibrationalIntensities();
28 
29  private:
30  Eigen::VectorXd squaredNormalDipoleGradient_;
31 };
32 
33 } // namespace RealTimeSpectroscopy
34 } // namespace Sparrow
35 } // namespace Scine
36 
37 #endif // RTSPECTROSCOPY_INTENSITIESCALCULATOR_H