ABACUS/src/NRG/NRG_K_Weight_integrand.cc

47 lines
1.2 KiB
C++

/**********************************************************
This software is part of J.-S. Caux's ABACUS library.
Copyright (c) J.-S. Caux.
-----------------------------------------------------------
File: NRG_K_Weight_integrand.cc
Purpose: for NRG, this function specifies the momentum-dependent
part of the perturbation prefactor.
Collaboration with Robert Konik.
***********************************************************/
#include "ABACUS.h"
using namespace std;
using namespace ABACUS;
namespace ABACUS {
// This function defines the integrand for momentum-dependent perturbation prefactor
DP K_Weight_integrand (Vect_DP args)
{
// Momentum-dependent part of weight used in selecting kept form factors.
// This function gives the integrand, with the weight being
// \int_{-1/2}^{1/2} dx integrand(x)
DP value;
{ // Case of a harmonic trap of strength omega_trap centered on 0:
// args[0] == x
// args[1] == iK
// args[2] == L
// args[3] == omega_trap
value = 12.0 * args[0] * args[0] * cos(twoPI * args[0] * args[1]) * pow(args[2], 2.0) * pow(args[3], 3.0);
}
return(value);
}
} // namespace ABACUS