Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

A WRFDA 3.x -4.x bug

This post was from a previous version of the WRF&MPAS-A Support Forum. New replies have been disabled and if you have follow up questions related to this post, then please start a new thread from the forum home page.

Kermit2021

New member
Hello everyone, I recently encountered a problem when using WRFDA for sensitivity analysis.
Code:
SIGSEGV, segmentation fault occurred
To solve this problem, I recompiled WRFDA with the -traceback parameter, and then I saw the following error:
Code:
Dummy character variable 'CBAY' has length 8 which is greater than actual variable length 1
So, I found this part of the code
At line 136 of $WRFDA/var/external/bufr/wrdlen.for (Version 4.2.1)
Code:
IA = IUPM('A',8)
But in iupm.f, the definition of the first parameter is 8 characters, which caused an error.

So I modified the above code to:
Code:
IA = IUPM('A       ',8)
Then I recompiled WRFDA, but I encountered another segmentation fault error

Code:
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image              PC                Routine            Line        Source             
da_wrfvar.exe      00000000045D7FCA  Unknown               Unknown  Unknown
libpthread-2.17.s  00002ACEEBE875D0  Unknown               Unknown  Unknown
da_wrfvar.exe      0000000002FB13DD  da_define_structu        2383  da_define_structures.f
da_wrfvar.exe      0000000001400BA0  da_minimisation_m        3291  da_minimisation.f
da_wrfvar.exe      00000000004C61CD  da_wrfvar_top_mp_        3383  da_wrfvar_top.f
da_wrfvar.exe      00000000004B6B06  da_wrfvar_top_mp_        2675  da_wrfvar_top.f
da_wrfvar.exe      00000000004B69F5  da_wrfvar_top_mp_        2645  da_wrfvar_top.f
da_wrfvar.exe      00000000004620D8  MAIN__                     45  da_wrfvar_main.f
da_wrfvar.exe      00000000004115E2  Unknown               Unknown  Unknown
libc-2.17.so       00002ACEEC2BA3D5  __libc_start_main     Unknown  Unknown
da_wrfvar.exe      00000000004114E9  Unknown               Unknown  Unknown

I checked the file da_define_structures.f and found that the code causing the error is:
Code:
if (.not.(present(value))) value = 0.0

But I think there is nothing wrong with this line of code.
This problem has troubled me for a long time, how can I solve it?
 
Hello Kermit2021,

Did you try the latest version: WRFDA v4.3.2? What compilers are you using?

Thanks.
 
Top