00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef HAMILTONIAN_H
00011 #define HAMILTONIAN_H
00012
00013 #include <gsl/gsl_matrix.h>
00014 #include "param.h"
00015
00016 typedef gsl_matrix_complex*(*hamiltonian_func_real_t)(quantum_system *qs, solver_param *param);
00017
00018 gsl_matrix_complex *hamiltonian_nTLS(quantum_system *qs, solver_param *param);
00019 int hamiltonian_t(gsl_matrix_complex *H_t, gsl_matrix_complex *H0, gsl_matrix_complex *H1, double t, solver_param *p);
00020 gsl_matrix_complex *hamiltonian_drive(quantum_system *qs, solver_param *param);
00021 gsl_matrix_complex *hamiltonian_2ho(quantum_system *qs, solver_param *param);
00022 gsl_matrix_complex *hamiltonian_2ho_drive(quantum_system *qs, solver_param *param);
00023
00024 gsl_matrix_complex *hamiltonian_q2ho(quantum_system *qs, solver_param *param);
00025 gsl_matrix_complex *hamiltonian_q2ho_drive(quantum_system *qs, solver_param *param);
00026
00027 gsl_matrix_complex *hamiltonian_qho(quantum_system *qs, solver_param *param);
00028 gsl_matrix_complex *hamiltonian_qho_drive(quantum_system *qs, solver_param *param);
00029
00030 gsl_matrix_complex *hamiltonian_ho(quantum_system *qs, solver_param *param);
00031 gsl_matrix_complex *hamiltonian_ho_drive(quantum_system *qs, solver_param *param);
00032
00033 #endif
00034