Open jedwards4b opened 11 months ago
@jedwards4b that looks like it should be atan2(Y,X)
, no? AFAIK the standards compliant atan
intrinsic would be the single argument one, right?
Ahh, Fortran 2008 overloads the atan
to also have a 2-argument variant
https://fortranwiki.org/fortran/show/atan
Maybe some F08 flags are needed, hmm..
Hmm, I think nvfortran
2008 support is known incomplete?:
... and many features of Fortran 2008...
FWIW, I can replicate here: /glade/work/benkirk/bugreports/compilers/nvhpc/atan_atan2
nvfortran(1) General Commands Manual nvfortran(1)
NAME
nvfortran - The NVIDIA Fortran compiler
SYNOPSIS
nvfortran [ -flag ]... sourcefile...
DESCRIPTION
nvfortran is a Fortran compilers for NVIDIA GPUs and AMD and Intel CPUs. nvfortran supports ISO Fortran 2003 and many
features of Fortran 2008, supports GPU parallel programming with OpenACC, and supports multicore CPU programming with
OpenACC and OpenMP. nvfortran invokes the Fortran compiler, assembler, and linker with options derived from its command
line arguments.
@benkirk thanks for researching - I will ask the developers if they can just use atan2 instead since it sounds like that should work.
forces%omega_w2x(i,j) = atan(tauy_at_h(i,j), taux_at_h(i,j))
atan should be an intrinsic and not generate an error.