public static GaNumMapUnilinearMatrix ToMatrixMap(this Dictionary <int, GaNumMultivector> basisBladeMaps, int domainVSpaceDim, int targetVSpaceDim) { var targetGaSpaceDim = targetVSpaceDim.ToGaSpaceDimension(); var zeroMvArray = new double[targetGaSpaceDim]; return(GaNumMapUnilinearMatrix.Create( DenseMatrix.OfColumnArrays( Enumerable .Range(0, domainVSpaceDim.ToGaSpaceDimension()) .Select( id => { GaNumMultivector mv; basisBladeMaps.TryGetValue(id, out mv); return mv?.TermsToArray() ?? zeroMvArray; } ) ) )); }
public static GaNumMapUnilinearMatrix ToMatrixMap(this Matrix linearMapMatrix) { return(GaNumMapUnilinearMatrix.Create(linearMapMatrix)); }
public static GaNumMapUnilinearMatrix ToMatrixMap(this IGaNumMapUnilinear linearMap) { return(GaNumMapUnilinearMatrix.Create(linearMap.ToMatrix())); }