jbuzan@purdue_edu
Member
Attempting to modify CanopyFluxesMod.F90.
I am implementing a non-linear calculation that is only valid over specific temperature and relative humidity conditions. In the interest of parallelizing computer code, I am using a WHERE statement:
do f = 1, fn
p = filterp(f)
c = pcolumn(p)
g = pgridcell(p)
l = plandunit(p)
WHERE ((t_ref2m(p).GT.324.15_r8) .AND. (t_ref2m(p).LT.293.15_r8))
hi_ref2m(p) = -999.999_r8
END WHERE
end do
However, I am receiving errors:
"
error #6090: An array-valued operand is required in this context.
WHERE ((t_ref2m(p).GT.324.15_r8) .AND. (t_ref2m(p).LT.293.15_r8))
-------------------------------------^
error #6087: An array assignment statement is required in this context. [HI_REF2M]
hi_ref2m(p) = -999.999_r8
-----^
"
My understanding is that the value (p) is a vector, and I need to convert it into an array. Unfortunately, in hunting down "filterp(f)", I find that they are related to:
"
integer, intent(in) :: lbp, ubp ! pft bounds
"
I do not know how to fix this error.
I would appreciate some insight into fixing this problem.
Thanks,
Jonathan R. Buzan
PhD Student, Earth and Atmospheric Sciences
Purdue University
jbuzan@purdue.edu
I am implementing a non-linear calculation that is only valid over specific temperature and relative humidity conditions. In the interest of parallelizing computer code, I am using a WHERE statement:
do f = 1, fn
p = filterp(f)
c = pcolumn(p)
g = pgridcell(p)
l = plandunit(p)
WHERE ((t_ref2m(p).GT.324.15_r8) .AND. (t_ref2m(p).LT.293.15_r8))
hi_ref2m(p) = -999.999_r8
END WHERE
end do
However, I am receiving errors:
"
error #6090: An array-valued operand is required in this context.
WHERE ((t_ref2m(p).GT.324.15_r8) .AND. (t_ref2m(p).LT.293.15_r8))
-------------------------------------^
error #6087: An array assignment statement is required in this context. [HI_REF2M]
hi_ref2m(p) = -999.999_r8
-----^
"
My understanding is that the value (p) is a vector, and I need to convert it into an array. Unfortunately, in hunting down "filterp(f)", I find that they are related to:
"
integer, intent(in) :: lbp, ubp ! pft bounds
"
I do not know how to fix this error.
I would appreciate some insight into fixing this problem.
Thanks,
Jonathan R. Buzan
PhD Student, Earth and Atmospheric Sciences
Purdue University
jbuzan@purdue.edu