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.GetBiTermsForEAcp(mv2))); }
public static GaSymMultivector EAcp(this GaSymMultivector mv1, GaSymMultivector mv2) { if (mv1.GaSpaceDimension != mv2.GaSpaceDimension) { throw new GMacSymbolicException("Multivector size mismatch"); } return(GaSymMultivector .CreateZeroTemp(mv1.GaSpaceDimension) .AddFactors(mv1.GetBiTermsForEAcp(mv2)) .ToMultivector()); }