compas / grasp

General Relativistic Atomic Structure Package
https://compas.github.io/grasp/
MIT License
56 stars 25 forks source link

Limitation of ASF serial no for each block in "rmcdhf" #33

Open pritivish opened 4 years ago

pritivish commented 4 years ago

Dear All,

While running rcsfgenetrate for W8+ (66 electrons), with reference

4d(10,c)5s(2,i)4f(14,i)5p(3,i)5d(1,i)
4d(10,c)5s(2,i)4f(13,i)5p(4,i)5d(1,i)
4d(10,c)5s(2,i)4f(12,i)5p(5,i)5d(1,i)

I got

11 blocks were created
       block  J/P            NCSF
           1    0-             40
           2    1-            110
           3    2-            156
           4    3-            173
           5    4-            160
           6    5-            127
           7    6-             88
           8    7-             52
           9    8-             25
          10    9-              9
          11   10-              2

however, while running "rmchdf" I am getting "CONVRT: Length of CNUM inadeuate." but if I am Entering ASF serial numbers for each block, less than 100 (even 99 for each block) it is running fine. Is there any restriction for no. of levels (ASF) that can be calculated for each block? It seems that increasing the length of CNUM can resolve this problem.

Thank You!    

mortenpi commented 4 years ago

Thanks for the report, I can reproduce it with e.g. this input to rmcdhf:

y            ! Default settings
1-40
1-110
1-156
1-173
1-160
1-127
88
52
1-15
1-9
1-2
           5 ! level weights
*
*
         100 ! Number of SCF cycles

The problem is on this line: https://github.com/compas/grasp/blob/88e074df71241215ad6e78d7ad93b284187ed7df/src/appl/rmcdhf90/strsum.f90#L133

where CLEVEL is a 2-character array. The easy fix would be to change to e.g. CLEVEL*6 or something on https://github.com/compas/grasp/blob/88e074df71241215ad6e78d7ad93b284187ed7df/src/appl/rmcdhf90/strsum.f90#L37

As a workaround, so that you could run your calculation, I would suggest making that change locally and recompiling GRASP. But there is always a possibility that we're making the same assumption that the level IDs are in the range 1-99 somewhere else as well, so it may crash in some other place.

pritivish commented 4 years ago

sorry for the late response. Thank You so much!

mortenpi commented 4 years ago

I'll reopen this, as this is something that could be fixed at some point.

jongrumer commented 4 years ago

Quick comment: yes we are very well aware of this limitation. Increasing CNUM/CLEVEL is a quick fix for RMCDHF. The 99 limit however also affects at least rlevels, jj2lsj, rci and the transitions codes. We should prioritize increasing to at least 5 digit no of eigenstates. Grasp has traditionally not been used to determine this many states at the same time before but more for targeting accuracy of a smaller subset of states, but as we push into 4f^n cases we probably need this as a single configuration there can produce 100's or 1000's of states.

Sorry for the VERY slow response. Weird spring indeed. Jon