NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ operator()()

template<class dos>
double cntr::dos_wrapper< dos >::operator() ( double  omega)
inline

Definition at line 250 of file cntr_equilibrium_impl.hpp.

References cntr::dos_wrapper< dos >::A_, cntr::dos_wrapper< dos >::beta_, cntr::dos_wrapper< dos >::mu_, cntr::dos_wrapper< dos >::sign_, cntr::dos_wrapper< dos >::tau_, and cntr::dos_wrapper< dos >::x_.

250  {
251  double a=A_(omega),fm;
252  if(x_==ret){
253  fm=1;
254  }else if(x_==les){
255  fm=sign_*distribution_eq(beta_,omega-mu_,sign_);
256  }else if (x_==tv){
257  fm=sign_*distribution_exp_eq(beta_,tau_,omega-mu_,sign_);
258  }else if(x_==mat){
259  if(omega-mu_>0){
260  fm=sign_*exp(-tau_*(omega-mu_))*distribution_eq(beta_,-(omega-mu_),sign_);
261  }else{
262  fm=(-1.0)*exp((beta_-tau_)*(omega-mu_))*distribution_eq(beta_,(omega-mu_),sign_);
263  }
264  }else{
265  fm=0;
266  }
267  return a*fm;
268  }