You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

JSC_NRG.h 1.3KB

123456789101112131415161718192021222324252627282930313233343536
  1. /**********************************************************
  2. This software is part of J.-S. Caux's ABACUS library.
  3. Copyright (c).
  4. -----------------------------------------------------------
  5. File: JSC_NRG.h
  6. Purpose: Declares NRG-related classes and functions.
  7. ***********************************************************/
  8. #ifndef _NRG_
  9. #define _NRG_
  10. #include "JSC.h"
  11. namespace JSC {
  12. DP K_Weight_integrand (Vect_DP args); // weighing function for state selection
  13. //void Select_States_for_NRG (DP c_int, DP L, int N, int iKmin, int iKmax, int Nstates_required, bool symmetric_states, int iKmod,
  14. // int weighing_option, DP (*weight_integrand_fn) (Vect_DP), Vect_DP& args_to_weight_integrand);
  15. void Select_States_for_NRG (DP c_int, DP L, int N, int iKmin, int iKmax, int Nstates_required, bool symmetric_states, int iKmod,
  16. //int weighing_option, DP (*weight_integrand_fn) (Vect_DP), Vect_DP& args_to_weight_integrand)
  17. int weighing_option, Vect<complex <DP> >& FT_of_potential);
  18. void Build_DFF_Matrix_Block_for_NRG (DP c_int, DP L, int N, int iKmin, int iKmax, int Nstates_required, bool symmetric_states, int iKmod,
  19. int weighing_option, int label_left_begin, int label_left_end, int label_right_begin, int label_right_end,
  20. int block_option, DP* DFF_block_1, DP* DFF_block_2, Vect_DP Kweight);
  21. }
  22. #endif // _NRG_