Closed wsmorgan closed 9 years ago
All you need to do, I think, is allow the code to hit the print routine when fixed concentration is set. I think it's commented out right now.
On Sat, Jun 13, 2015 at 11:17 AM, Wiley Morgan notifications@github.com wrote:
For the UNCLE code there is a conc_check to see if we have a finite concentration. When a concentration range is passed in the code still doesn't write output. Andrew and I discovered this some time ago and I'm posting about it now because there are functions that need testing that are only used when there is a fixed concentration of the elements. How do we go about fixing this?
— Reply to this email directly or view it on GitHub https://github.com/msg-byu/enumlib/issues/8.
Gus Hart http://msg.byu.edu
There are actually 4 lines in the code that deal with fixed concentration enumeration that are commented out. They are:
call generate_permutation_labelings_new(ivol, nD, rdRPList(iBlock)%perm, iRange(iC,:), fixed_cells)
call generate_permutation_labelings(k,ivol,nD,rdRPList(iBlock)%perm,&
lm,iRange(iC,:),labelFull,digitFull,lab_degen,fixed_cells)
call generate_disjoint_permutation_labelings(k,ivol,nD&
&,rdRPList(iBlock)%perm,lm,iRange(iC,:),labelFull,digitFull,2)
call write_labelings(k,ivol,nD,label,digit,iBlock,rdHNF,SNF,L,fixOp,Tcnt,Scnt,HNFcnt&
&,RPLindx,lm,equivalencies,hnf_degen,lab_degen,iRange(iC,:))
The first one is a routine that appears to be unfinished for the enum4 implementation, I intend to leave this one alone for now. The question is which of the next two lines is the one we want? I can and will make unit tests for both but we should fix this so that until enum4 is done we can actually do fixed concentration enumeration with the code. So do we use generate_permutation_labelings, generate_disjoint_permutation_labelings, or both?
Turns out you need the call generate_permutation_labelings and write_labelings for it to work. The call generate_disjoint_permutation_labelings is a non-public routine in labeling_related.f90 that is also apparently redundant from what it says in it's summary tag.
For the UNCLE code there is a conc_check to see if we have a finite concentration. When a concentration range is passed in the code still doesn't write output. Andrew and I discovered this some time ago and I'm posting about it now because there are functions that need testing that are only used when there is a fixed concentration of the elements. How do we go about fixing this?