Molcas Forum

Support and discussions for Molcas and OpenMolcas users and developers

You are not logged in.

Announcement

Welcome to the Molcas forum.

Please note: The forum's URL has changed. The new URL is: https://molcasforum.univie.ac.at. Please update your bookmarks!

You can choose an avatar and change the default style by going to "Profile" → "Personality" or "Display".

#1 2021-02-27 21:19:24

andrewshyichuk
Member
Registered: 2020-02-13
Posts: 86

[SOLVED] "Error in FindErrorLine" in Seward

Dear Users,

I get the following error in a Seward reading a seemingly fine, albeit long input file.

The atom shown here is 1670'th of those read, of which only one has a basis, the rest are pseudocharges (AIMPs).

Did it trigger any limitation on the number of atoms?

Checked in the newest (33e08409) and an older (d7828899) versions of OpenMolcas.

Thank you.
Andrew

 ******   Error  *******
ABKH   -9.383008260000    1.352233230000   14.117955130000  Angstrom /  O_429                                                                                    

 ###############################################################################
 ###############################################################################
 ###                                                                         ###
 ###                                                                         ###
 ###    ERROR: Error in FindErrorLine                                        ###
 ###                                                                         ###
 ###                                                                         ###
 ###############################################################################
 ###############################################################################
--- Stop Module: seward at Sat Feb 27 21:01:06 2021 /rc=_RC_INPUT_ERROR_ ---

Last edited by andrewshyichuk (2021-03-01 16:51:13)

Offline

#2 2021-02-28 11:02:00

andrewshyichuk
Member
Registered: 2020-02-13
Posts: 86

Re: [SOLVED] "Error in FindErrorLine" in Seward

I've trimmed the input and with total of 1620 atoms it worked.

I don't really want to check the exact limit one by one, hense - is there a limit, or is this a bug?

Thank you.
Andrew

Offline

#3 2021-03-01 09:26:25

Ignacio
Administrator
From: Uppsala
Registered: 2015-11-03
Posts: 1,085

Re: [SOLVED] "Error in FindErrorLine" in Seward

There are some hard-coded limits. Without an input sample it's difficult to say more.

Offline

#4 2021-03-01 14:20:58

andrewshyichuk
Member
Registered: 2020-02-13
Posts: 86

Re: [SOLVED] "Error in FindErrorLine" in Seward

Dear Ignacio,

I attach some input files: https://www.dropbox.com/s/3cdp5f2so7cin57/L456.zip?dl=0
To reproduce, unzip the archive to a new dir, cd into it, export MOLCAS=your_molcas, export MOLCAS_WORKDIR=$PWD, pymolcas $f.input > $f.output.
I also added my outputs.

Currently, I think the problem is in the number of atoms within a single "Basis Set ... End of Basis" block.
It works with 1484 atoms (total of 2725), and does not work with more. 
These numbers do not show up in the src/Include/*fh files.
I worked on eliminating other possible causes.

Thank you.
Andrew

Last edited by andrewshyichuk (2021-03-01 14:23:44)

Offline

#5 2021-03-01 15:40:41

andrewshyichuk
Member
Registered: 2020-02-13
Posts: 86

Re: [SOLVED] "Error in FindErrorLine" in Seward

I dug around and think that this is a bug in src/integral_util/inputil.f

The file is a bit strange (IMHO), as it uses "Call FindErrorLine" before e.g. "Call WarningMessage(2,'Error in Get_S')", thus it is unclear where "Call FindErrorLine" happened.
I changed the order of the two, and now I know that "Call FindErrorLine" happens after "Call WarningMessage(2,'Error in Get_S')" in subroutine Get_F, after goto 600.
But, goto 600 does not occur in the file, hense "read(string,'(F80.0)',err=600,end=600) val(i)" is the culprit.

I don't know yet what goes wrong, but the "error" line contains no error:

 ******   Error  *******
ABKH   -9.383008260000    1.352233230000   14.117955130000  Angstrom /  O_00429

I know that because this line is fine when the input is shorter. Thus, a bug

Edit:
Added backtrace:

#0  0x7fb93a7b0d51 in ???
#1  0x47849a in get_f_
        at /opt/OpenMolcas-33e08409/src/integral_util/inputil.f:191
#2  0x4792b6 in get_f1_
        at /opt/OpenMolcas-33e08409/src/integral_util/inputil.f:199
#3  0x45be56 in rdctl_seward_
        at /opt/OpenMolcas-33e08409/src/gateway_util/rdctl_seward.f:1317
#4  0x40519d in seward_
        at /opt/OpenMolcas-33e08409/src/seward/seward.f:191
#5  0x404f30 in MAIN__
        at /opt/OpenMolcas-33e08409/src/seward/main.f:23
#6  0x404f30 in main
        at /opt/OpenMolcas-33e08409/src/seward/main.f:25

Last edited by andrewshyichuk (2021-03-01 16:42:48)

Offline

#6 2021-03-01 16:50:48

andrewshyichuk
Member
Registered: 2020-02-13
Posts: 86

Re: [SOLVED] "Error in FindErrorLine" in Seward

============ SOLVED ============


I backtraced the error to rdctl_seward.f, where the calling line was a keyword call.
The input had the AIMP atoms named as AAAA, AAAB, AAAC, ... ABAA, ABAB, ABAC ..., which eventually gave ACDT, which is a keyword.
The line was thus wrogly interpreted.

This gave me an idea: I added "call xbacktrace" to ../system_util/warningmessage.f.
I will thus see all traces of all errors, no matter the compilation options and exit code.


Edit: The following comment.
FindErrorLine subroutine did do a lousy job after all: the found and printed "error" line was 1056 lines before the actual error line, thus it might need an improvement.

Last edited by andrewshyichuk (2021-03-01 16:57:25)

Offline

Board footer

Powered by FluxBB 1.5.11

Last refresh: Today 22:53:43