53 REAL,
INTENT(IN) :: PDAT
54 REAL,
INTENT(IN) :: PNDAT
55 REAL,
DIMENSION(:),
INTENT(IN) :: PVAL0
56 REAL,
DIMENSION(:),
INTENT(IN) :: PVAL1
57 REAL,
DIMENSION(:),
INTENT(IN) :: PVAL2
58 REAL,
DIMENSION(:),
INTENT(OUT) :: POUT
64 REAL :: ZFACT0, ZFACT1, ZFACT2
66 REAL(KIND=JPRB) :: ZHOOK_HANDLE
73 IF (
lhook)
CALL dr_hook(
'INTERPOL_LINEAR',0,zhook_handle)
81 zfact0=max(1.0-(pdat*2.0+pndat-1.0)/(pndat*2.0),0.0)
82 zfact1=(2.0*pndat-abs(2.0*pdat-pndat-1.0))/(pndat*2.0)
83 zfact2=max(1.0-((pndat+1.0-pdat)*2.0+pndat-1.0)/(pndat*2.0),0.0)
88 pout(:) = pval0(:)*zfact0+pval1(:)*zfact1+pval2(:)*zfact2
93 IF (
lhook)
CALL dr_hook(
'INTERPOL_LINEAR',1,zhook_handle)
subroutine interpol_linear(PDAT, PNDAT, PVAL0, PVAL1, PVAL2, POUT)