#include <hydra/all.h>
intmain(){usingnamespacehydra;usingnamespacearma;intn_sites=8;// Create the HamiltonianBondListbonds;autoT_mat=mat(n_sites,n_sites,fill::randn);autoJ_mat=mat(n_sites,n_sites,fill::randn);for(inti=0;i<n_sites;++i){for(intj=0;j<n_sites;++j){if(i!=j){// Define hoppingsstd::stringT=fmt::format("T{}{}",i,j);bonds<<Bond("HOP",T,{i,j});bonds[T]=T_mat(i,j);// Define Heisenberg interactionsstd::stringJ=fmt::format("J{}{}",i,j);bonds<<Bond("HB",J,{i,j});bonds[J]=J_mat(i,j);}}}// Define block with two holesintn_up=n_sites/2-1;intn_dn=n_sites/2-1;autoblock=tJ(n_sites,n_up,n_dn);// Compute the full Hamiltonian matrixautoH=matrix_cplx(bonds,block);// Compute all eigenvalues of Hveceigs;eig_sym(eigs,H);HydraPrint(eigs);returnEXIT_SUCCESS;}