sonia93
Student
- Aug 29, 2022
- 1
Hello, I am compiling an ABAQUS subroutine coded in Fortran 90, when I try to either Print some values for debugging or writing these values to a text file, I get wrong order of the output. Sometimes the same Print/Write statement is repeated many times, and some values are skipped in some iterations. I have read about Flushing the output buffers, but still the same problem. Someone suggested that the problem comes from parallel processing, how can I deactivate it, in order to get the correct debugging order?
Thank you!
This is the code I use for writing some values to a text file. First I start with this code to indicate the beginning of a while loop(outside the loop):
Then inside the loop, I print an angle value:
Finally, outside the loop, I write a statement to indicates its end and the number of done iterations:
And here is a sample of the text file I get:
Thank you!
This is the code I use for writing some values to a text file. First I start with this code to indicate the beginning of a while loop(outside the loop):
Code:
IF (KINC .EQ. 5) THEN
OPEN(1, file='/home/ABAQUS/phies.txt' , action='write',position='append')
write(1,*) 'Start while loop'
call flush(1)
close(1)
ENDIF
Code:
IF (KINC .EQ. 5) THEN
OPEN(1, file='/hom/ABAQUS/phies.txt' , action='write',position='append')
write(1,*) phi
CALL flush(1)
close(1)
ENDIF
Code:
IF (KINC .EQ. 5) THEN
OPEN(1, file='/home/ABAQUS/phies.txt' , action='write',position='append')
write(1,*) 'end while loop'
CALL flush(1)
write(1,*) iterator
CALL flush(1)
close(1)
ENDIF