From f6bf5f4807ed4b11a74b19e368d2bc16f4e4fcd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Bourgin?= <francois.bourgin@inrae.fr> Date: Fri, 17 Apr 2020 18:48:26 +0200 Subject: [PATCH] UPDATE: ETP Oudin daily in Fortran --- R/PEdaily_Oudin.R | 7 ++++--- src/frun_ETP.f90 | 1 - 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/R/PEdaily_Oudin.R b/R/PEdaily_Oudin.R index b8fcef19..7689fd5b 100644 --- a/R/PEdaily_Oudin.R +++ b/R/PEdaily_Oudin.R @@ -1,4 +1,4 @@ -PEdaily_Oudin <- function(JD, Temp, LatRad, Lat, LatUnit = c("rad", "deg")) { +PEdaily_Oudin <- function(JD, Temp, LatRad, Lat, LatUnit = c("rad", "deg"), run_fortran = F) { ## ---------- deprecated function @@ -49,14 +49,14 @@ PEdaily_Oudin <- function(JD, Temp, LatRad, Lat, LatUnit = c("rad", "deg")) { ## ---------- Oudin's formula - run_fortran = T + if (run_fortran) { if (LatUnit[1L] == "rad") { Lat = Lat * 180 / pi } LInputs = as.integer(length(Temp)) - + RESULTS <- .Fortran("frun_etp_oudin", PACKAGE="airGR", ##inputs LInputs = LInputs, @@ -66,6 +66,7 @@ PEdaily_Oudin <- function(JD, Temp, LatRad, Lat, LatUnit = c("rad", "deg")) { ##outputs PE_Oudin_D = rep(as.double(-999.999), LInputs) ) + PE_Oudin_D = RESULTS$PE_Oudin_D } else { PE_Oudin_D <- rep(NA, length(Temp)) diff --git a/src/frun_ETP.f90 b/src/frun_ETP.f90 index 5bde3e9c..2fbb5fdc 100644 --- a/src/frun_ETP.f90 +++ b/src/frun_ETP.f90 @@ -28,7 +28,6 @@ DO k=1,LInputs tt = InputsTT(k) jj = InputsJJ(k) - ETPoud = -99.9 !model run on one time step CALL ETP_OUDIN(FI,tt,jj,ETPoud) !storage of outputs -- GitLab