public override IGaSymMultivectorTemp MapToTemp(GaSymMultivector mv1, GaSymMultivector mv2) { if (mv1.GaSpaceDimension != DomainGaSpaceDimension || mv2.GaSpaceDimension != DomainGaSpaceDimension2) { throw new GMacSymbolicException("Multivector size mismatch"); } return (GaSymMultivector .CreateZeroTemp(TargetGaSpaceDimension) .AddFactors(mv1.GetBiTermsForCp(mv2, OrthogonalMetric))); }