public override GaMultivector BasisBladeSignature(int id) { var basisBlade = GaMultivector.CreateBasisBlade(GaSpaceDimension, id); var sig = Gp(basisBlade, basisBlade); return(id.BasisBladeIdHasNegativeReverse() ? -sig : sig); }
/// <summary> /// Convert this basis blade into a multivector value with unity coefficient of its single term /// </summary> /// <returns></returns> public AstValueMultivector ToMultivectorValue() { return(new AstValueMultivector( GMacValueMultivector.Create( AssociatedFrame.MultivectorType, GaMultivector.CreateBasisBlade( AssociatedFrame.GaSpaceDimension, BasisBladeId ) ) )); }
public GaMultivector CreateUnitPseudoScalar() { return(GaMultivector.CreateBasisBlade(GaSpaceDimension, MaxBasisBladeId)); }
internal static GMacValueMultivector CreateBasisBlade(GMacFrameMultivector mvType, int id) { var mvCoefs = GaMultivector.CreateBasisBlade(mvType.ParentFrame.GaSpaceDimension, id); return(new GMacValueMultivector(mvType, mvCoefs)); }