Welcome, Guest
Username: Password: Remember me

TOPIC: Fortran (conlit) file in parallel mode

Fortran (conlit) file in parallel mode 12 years 9 months ago #3591

  • konsonaut
  • konsonaut's Avatar
  • OFFLINE
  • openTELEMAC Guru
  • Posts: 413
  • Thank you received: 144
Hello,

I'm trying to do a simulation in parallel mode with a user defined time dependent sediment inflow into the model via the conlit file. See endlosed in the princi file.
In scalar mode it works well! but in parallel mode the simulation stops and the cluster tells me:
"mpiexec noticed that process rank 4 with PID 18146 on node r11n16.gb exited on signal 11 (Segmentation fault)."

File Attachment:

File Name: princi_sis_up.txt
File Size: 10 KB


So I did some tests and noticed that imposing a constant sediment inflow (no use of time variable AT) the simulation works also in parallel!

What could be the reason?
Thanks for any help!

Clemens
The topic has been locked.

Re: Fortran (conlit) file in parallel mode 12 years 9 months ago #3592

  • c.coulet
  • c.coulet's Avatar
  • OFFLINE
  • Moderator
  • Posts: 3722
  • Thank you received: 1031
Hi Clemens

The problem comes probably from the line:
IF (K.GE.329.AND.K.LE.365) THEN
You have a hard numbering definition which stay correct in scalar because the selafin file used by the computation in equal to the geometry file but in parallel, the computation is made on a subdomain so node numbering is changing.
I don't know what you want to do exactly with this condition (i suppose it's only a part of a liquid boundary) but you should find another solution to use this condition in parallel. Maybe you could use the boundary color...

Hope this helps
Christophe
The topic has been locked.

Re: Fortran (conlit) file in parallel mode 12 years 9 months ago #3593

  • konsonaut
  • konsonaut's Avatar
  • OFFLINE
  • openTELEMAC Guru
  • Posts: 413
  • Thank you received: 144
Hello,

thank you for the answer. I removed this line but the problem remains.

In the original conlit.f file there is no time variable AT, so I added it in line 91 and line 164. As I said in scalar mode this works well, but in parallel mode some strange things happen because the compilation itself gives me no error but the simulation stops at the first time step without any error message from Telemac.

I'm very thankful for any help!

Clemens
The topic has been locked.

Re: Fortran (conlit) file in parallel mode 12 years 9 months ago #3594

  • mafknaapen
  • mafknaapen's Avatar
  • OFFLINE
  • Expert Boarder
  • Posts: 157
  • Thank you received: 62
Hi Clemens,

I might be wrong, given that you say that the model runs with a single processor, but the thing that bothers me about your princi-file is the addition of AT as an input parameter.

The subroutine calling your new conlit, will not have AT in the calling header. Therefore, it's value will be quite random (depending on the structure of your memory allocation, and tehrefore it might be different for single processor and multi processor runs.). Depending on the settings of your compiler, this might not be picked up in the compilations stage.

have you checked the values of AT in the conlit routine? An better way to get AT into the conlit would be to use the following declaration.

USE DECLARATIONS_TELEMAC, ONLY : AT

Regards,

Michiel
Dr Michiel Knaapen
Senior Scientist
E This email address is being protected from spambots. You need JavaScript enabled to view it.
T +44 (0)1491 822399

HR Wallingford, Howbery Park, Wallingford, Oxfordshire OX10 8BA, United Kingdom
T +44 (0)1491 835381, F +44 (0)1491 832233
www.hrwallingford.com
The topic has been locked.
The following user(s) said Thank You: konsonaut

Re: Fortran (conlit) file in parallel mode 12 years 9 months ago #3595

  • c.coulet
  • c.coulet's Avatar
  • OFFLINE
  • Moderator
  • Posts: 3722
  • Thank you received: 1031
Clemens
I didn't noticed the AT modification.

It's strange such modification works in scalar because you made a hazardous modification. In telemac, you cannot add an argument to a subroutine if you didn't change some other things particularly in the subroutine call.
You probably also modify the interface_sisyphe module.

But you probably simplify this task by adding the following line in the beginning of conlit subroutine
USE DECLARATIONS_TELEMAC2D, ONLY : AT

Hope this helps
Christophe
The topic has been locked.
The following user(s) said Thank You: konsonaut

Re: Fortran (conlit) file in parallel mode 12 years 9 months ago #3596

  • konsonaut
  • konsonaut's Avatar
  • OFFLINE
  • openTELEMAC Guru
  • Posts: 413
  • Thank you received: 144
Hello Michiel and Christophe,

thanky you very much!
You make my day!

Clemens

P.S. And I have to look more into the Telemac programming structure.
The topic has been locked.

Re: Fortran (conlit) file in parallel mode 12 years 9 months ago #3607

  • sebourban
  • sebourban's Avatar
  • OFFLINE
  • Administrator
  • Principal Scientist
  • Posts: 814
  • Thank you received: 219
Hello,

I trust you know this but just in case ... you can explore the source code of the entire TELEMAC system through our doxygen pages.

On this website's menu: Documentation => Source Code
Also here: docs.opentelemac.org

You can view a summary information on every single subroutine, the source code itself as well as structure diagrams who-calls-who while everything is hyper-linked together ... all in all a separate part of this wensite of about 7,000 web pages ...

We did put a lot of effort to document the source code and to develop the scripts to generate the docs ...

Hope this helps.

Sébastien.
The topic has been locked.
Moderators: Pablo, pavans

The open TELEMAC-MASCARET template for Joomla!2.5, the HTML 4 version.