|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Good Morning.
I tried to use the CVEL command and received this error:
CHARMM>
CHARMM> !!!Note: probably need to constrain cor2 CHARMM>
CHARMM> cvel
CVELOCI> SETING UP VECTOR DIRECTIVES
***** LEVEL 0 WARNING FROM ***** ***** CVELOCI code not compiled ****************************************** BOMLEV ( 0) IS REACHED - TERMINATING. WRNLEV IS 5
I think there is also output files from the CHARMM-GUI that use this command.
But, the cmake mode doesn't have an option for compiling CHARMM with the CVEL option turned on.
Can someone help with this?
Thanks so much.
Regards,
Angelo
|
|
|
|
Joined: Sep 2003
Posts: 8,650 Likes: 26
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 8,650 Likes: 26 |
Only more widely used features have explicit "--with-" options. Other features require the use the "-a" option to configure, in this case "-a CVELOCI" (but w/o the quotes).
Rick Venable computational chemist
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Thanks so much Rick. I tried -a CVELO. I did not know to try -a CVELOCI.
Regards,
Anglo
|
|
|
|
Joined: Sep 2003
Posts: 8,650 Likes: 26
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 8,650 Likes: 26 |
It does not seem to be documented anywhere.
The CVELOCI in the error message was a strong hint, but I had the check the source code to verify. The feature keywords are prefixed by KEY_ in the preprocessor directives.
"Use the source, Luke."
Rick Venable computational chemist
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Hello everyone,
../configure --without-mpi --without-openmm -a veloci
0r
../configure --without-mpi --without-openmm --add veloci
Sat Jan 29 16:06:14 [rossi@debian build]$ls CMakeCache.txt CMakeFiles/ Makefile c_files.cmake cmake_install.cmake cxx_files.cmake fortran_files.cmake keywords.inc pref.dat revid.h Sat Jan 29 16:06:15 [rossi@debian build]$
fortran_files.cmake: ... source/dynamc/avfl_ucell.F90 source/dynamc/consph.F90 source/dynamc/cveloci.F90 source/dynamc/cvio.F90 source/dynamc/dcntrl.F90 ...
keywords.inc: ... "UNIX", & "VALBOND", & "VELOCI", & "WCA" ]
pref.dat: ... QUANTUM QCHEM VELOCI END
and this is the result
CHARMM> set speed 0.0001 Parameter: SPEED <- "0.0001" CHARMM> define p1 select ATOM DATM 1 DUM end SELRPN> 1 atoms have been selected out of 1002 CHARMM> define p2 select ATOM DATM 2 DUM end SELRPN> 1 atoms have been selected out of 1002 CHARMM> CHARMM> cvel @speed select p1 end select p2 end Parameter: SPEED -> "0.0001"
CVELOCI> SETING UP VECTOR DIRECTIVES
***** LEVEL 0 WARNING FROM ***** ***** CVELOCI code not compiled ****************************************** BOMLEV ( -1) IS NOT REACHED. WRNLEV IS 5
**** Warning **** The following extraneous characters were found while command processing in CHARMM 0.0001 SELECT P1 END SELECT P2 END CHARMM> CHARMM> stop
I worked on this for a couple of hours poking around and modifying the configure attributes, and it still won't work.
CVELOC is in there ... just like it's in the spaghetti source: nm charmm | grep -i cveloc 000000000004fe90 T __cveloci_mod_MOD_cveloci
but looking at the code I can't tell if #if KEY_CVELOCI==1 /*cveloci_fcm*/ ! impulse ! Purpose: ! atoms that assigned a constant velocity ! ! Variable Purpose ! LCVEL logical: is impulse on or not ! NCVEL total number in FCVEL ! FCVEL(NCVEL) array with impulsed atom ids ! VCVEL(3,NCVEL) array with impule velocity (Ang/AKMA time) !
CVELOC is really set to 1.
Also, ../configure --without-mpi --without-openmm, i.e. without "-a cveloci" produces the same"fortran_files.cmake" file that includes "source/dynamc/cveloci.F90". The "keywords.inc" and "pref.dat" files DO NOT include any reference to CVELOCI
I think it's a BUG somewhere really.
Help.
Regards,
Angelo
Last edited by rossi; 01/29/22 09:33 PM.
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Hello, it is working now. I apologize for any inconvenience. But all the stuff in the previous post is correct.
Regards,
Angelo
|
|
|
|
Joined: Sep 2003
Posts: 4,882 Likes: 12
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 4,882 Likes: 12 |
So what was the problem and how did you resolve it? Useful info for others who run into this or a similar issue.
Lennart Nilsson Karolinska Institutet Stockholm, Sweden
|
|
|
|
Joined: Sep 2003
Posts: 8,650 Likes: 26
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 8,650 Likes: 26 |
It should be noted that the file cveloci.F90 will be in the cmake list, as it is compiled regardless; if the CVELOCI keyword is not specified via -a (--add) on the configure command line (or misspelled), the code produced is a stub routine, that just prints the error message. The keywords are embedded in compiler directives, e.g. #if KEY_CVELOCI==1 /*cvel_main*/
:
main code
:
#else /* (cvel_main)*/
CALL WRNDIE(0,'<CVELOCI>','CVELOCI code not compiled')
#endif /* (cvel_main)*/
RETURN Note the KEY_ prefix in the directive; the 'main code' is the bulk of the actual subroutine. The cveloci.mod files produced with and without the feature should exist, but they should be different in size and contents.
Last edited by rmv; 01/31/22 03:45 AM.
Rick Venable computational chemist
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Dear Rick,
Thanks so much for your help and insight.
Dear Lennart,
Do I have to tell you? I feel stupid about this.
As you probably are aware, I have been doing lots of CHARMM builds lately. And I did this from a BUILD sub-directory in the main CHARMM directory.
1. I used the command ../configure -a CVELO But, it wasn't correct. Please see Rick's answer, above.
2. After I got an answer from Rick indicating it should be -a CVELOCI, I performed a "make clean" command which left cmake files and directories in the BUILD sub-directory, and then I used ../configure -a CVELOCI (OK, I did this a few times, after each time that the cvel command wouldn't work; I was in a make clean <--> ../configure DO LOOP)
4. Then I finally did the following: rm -R -f BUILD; mkdir BUILD; cd BUILD; ../configure -a CVELOCI, and cvel commands were now accepted.
So, I think the answer is to use a clean BUILD sub-directory each time one performs a ../configure command.
Again, I apologize any inconvenience this caused.
Regards,
Angelo
|
|
|
|
|