geop_r Function

public function geop_r(first, factor, n)

Arguments

Type IntentOptional AttributesName
real(kind=SP), intent(in) :: first
real(kind=SP), intent(in) :: factor
integer(kind=I4B), intent(in) :: n

Return Value real(kind=SP), DIMENSION(n)


Called by

proc~~geop_r~~CalledByGraph proc~geop_r geop_r interface~geop geop interface~geop->proc~geop_r

Contents

Source Code


Source Code

	FUNCTION geop_r(first,factor,n)
	REAL(SP), INTENT(IN) :: first,factor
	INTEGER(I4B), INTENT(IN) :: n
	REAL(SP), DIMENSION(n) :: geop_r
	INTEGER(I4B) :: k,k2
	REAL(SP) :: temp
	if (n > 0) geop_r(1)=first
	if (n <= NPAR_GEOP) then
		do k=2,n
			geop_r(k)=geop_r(k-1)*factor
		end do
	else
		do k=2,NPAR2_GEOP
			geop_r(k)=geop_r(k-1)*factor
		end do
		temp=factor**NPAR2_GEOP
		k=NPAR2_GEOP
		do
			if (k >= n) exit
			k2=k+k
			geop_r(k+1:min(k2,n))=temp*geop_r(1:min(k,n-k))
			temp=temp*temp
			k=k2
		end do
	end if
	END FUNCTION geop_r