8 #ifndef SCAMAC_DOF_FERMIONS_H 9 #define SCAMAC_DOF_FERMIONS_H 27 } scamac_dof_fermions_st;
30 typedef int scamac_rep_fermions_st;
32 ScamacErrorCode scamac_dof_fermions_alloc(
int n_sites,
int n_fermions, scamac_dof_fermions_st ** dof);
33 void scamac_dof_fermions_free(scamac_dof_fermions_st * dof);
35 ScamacIdx scamac_dof_fermions_ns(
const scamac_dof_fermions_st * dof);
37 scamac_rep_fermions_st * scamac_rep_fermions_alloc(
const scamac_dof_fermions_st *dof);
38 void scamac_rep_fermions_free(scamac_rep_fermions_st * rep);
40 void scamac_rep_fermions_copy(
const scamac_dof_fermions_st *dof,
const scamac_rep_fermions_st * rep, scamac_rep_fermions_st * repcpy);
42 ScamacErrorCode scamac_fermions_decode(
const scamac_dof_fermions_st * dof, ScamacIdx idx, scamac_rep_fermions_st *rep);
43 ScamacIdx scamac_fermions_encode(
const scamac_dof_fermions_st * dof,
const scamac_rep_fermions_st *rep);
46 double scamac_op_fermions_cdc (
const scamac_dof_fermions_st * dof,
const scamac_rep_fermions_st *rep,
int ic);
47 double scamac_op_fermions_nn (
const scamac_dof_fermions_st * dof,
const scamac_rep_fermions_st *rep,
int i,
int j);
49 double scamac_op_fermions_cdicj(
const scamac_dof_fermions_st * dof, scamac_rep_fermions_st *rep,
int i,
int j);
50 double scamac_op_fermions_hop (
const scamac_dof_fermions_st * dof, scamac_rep_fermions_st *rep,
int i,
int j);
ScaMaC data structure and macro definitions.