Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=r64), | intent(in) | :: | Tc | |||
real(kind=r64), | intent(in) | :: | Ee | |||
real(kind=r64), | intent(in) | :: | Ix0 | |||
real(kind=r64), | intent(in) | :: | aIsc | |||
real(kind=r64), | intent(in) | :: | aImp | |||
real(kind=r64), | intent(in) | :: | c4 | |||
real(kind=r64), | intent(in) | :: | c5 |
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
REAL(r64) Function SandiaIx(Tc,Ee,Ix0,aIsc,aImp,C4,C5)
! FUNCTION INFORMATION:
! AUTHOR G. Barker
! DATE WRITTEN <unknown>
! MODIFIED na
! RE-ENGINEERED B. Griffith, Jan 2004 F77 -> f90
! PURPOSE OF THIS FUNCTION:
! Returns current "Ix" at V=0.5*Voc (A)
! METHODOLOGY EMPLOYED:
! <description>
! REFERENCES:
! Equation 9 in King et al. nov 20003
! USE STATEMENTS:
! na
IMPLICIT NONE ! Enforce explicit typing of all variables in this routine
! FUNCTION ARGUMENT DEFINITIONS:
REAL(r64), INTENT(IN) :: Tc ! cell temperature (deg C)
REAL(r64), INTENT(IN) :: Ee ! effective irradiance
REAL(r64), INTENT(IN) :: Ix0 ! Ix at SRC (1000 W/m2, 25 C) (A)
REAL(r64), INTENT(IN) :: aIsc ! Isc temp coefficient (/C)
REAL(r64), INTENT(IN) :: aImp ! Imp temp coefficient (/C)
REAL(r64), INTENT(IN) :: c4 ! empirical module-specific constants
REAL(r64), INTENT(IN) :: c5 ! empirical module-specific constants
! FUNCTION PARAMETER DEFINITIONS:
! na
! INTERFACE BLOCK SPECIFICATIONS:
! na
! DERIVED TYPE DEFINITIONS:
! na
! FUNCTION LOCAL VARIABLE DECLARATIONS:
SandiaIx=Ix0*(C4*Ee+C5*Ee**2) &
*(1.0d0+((aIsc+aImp)/2.0d0*(Tc-25.0d0)))
END FUNCTION SandiaIx