public	RandomVariableInterface[]	getFactorLoading(double time, int component, RandomVariableInterface[] realizationAtTimeIndex) {
		int timeIndex = timeDiscretization.getTimeIndex(time);
		if(timeIndex < 0) {
			timeIndex = -timeIndex - 2;
		}
		return getFactorLoading(timeIndex, component, realizationAtTimeIndex);
	}
public RandomVariableInterface [ ] getFactorLoading ( double time , int component , RandomVariableInterface [ ] realizationAtTimeIndex ) { int timeIndex = timeDiscretization . getTimeIndex ( time ) ; if ( timeIndex < 0 ) { timeIndex = - timeIndex - 2 ; } return getFactorLoading ( timeIndex , component , realizationAtTimeIndex ) ; }
Return the factor loading for a given time and component index.
The factor loading is the vector <i>f<sub>i</sub></i> such that the scalar product <br>
<i>f<sub>j</sub>f<sub>k</sub> = f<sub>j,1</sub>f<sub>k,1</sub> + ... + f<sub>j,m</sub>f<sub>k,m</sub></i> <br>
is the instantaneous covariance of the component <i>j</i> and <i>k</i>.

With respect to simulation time <i>t</i>, this method uses a piece wise constant interpolation, i.e.,
it calculates <i>t_<sub>i</sub></i> such that <i>t_<sub>i</sub></i> is the largest point in <code>getTimeDiscretization</code>
such that <i>t_<sub>i</sub> &le; t </i>.

@param time The time <i>t</i> at which factor loading is requested.
@param component The index of the component <i>i</i>. Note that this class may have its own LIBOR time discretization and that this index refers to this discretization.
@param realizationAtTimeIndex The realization of the stochastic process (may be used to implement local volatility/covariance/correlation models).
@return The factor loading <i>f<sub>i</sub>(t)</i>.