public override GaSymMultivectorTerm MapToTerm(int id1, int id2) { return(GaSymMultivectorTerm.CreateTerm( TargetGaSpaceDimension, id1 ^ id2, GMacMathUtils.IsNonZeroERcp(id1, id2) ? (GMacMathUtils.IsNegativeEGp(id1, id2) ? Mfs.Minus[OrthogonalMetric[id1 & id2]] : OrthogonalMetric[id1 & id2]) : Expr.INT_ZERO )); }
public override GaNumMultivectorTerm MapToTerm(int id1, int id2) { return(GaNumMultivectorTerm.CreateTerm( TargetGaSpaceDimension, 0, GMacMathUtils.IsNonZeroESp(id1, id2) ? (GMacMathUtils.IsNegativeEGp(id1, id1) ? -OrthogonalMetric[id1] : OrthogonalMetric[id1]) : 0.0d )); }
public override IGaSymMultivectorTemp MapToTemp(int id1, int id2) { var tempMultivector = GaSymMultivector.CreateZeroTemp(TargetGaSpaceDimension); tempMultivector.SetTermCoef( id1 ^ id2, GMacMathUtils.IsNegativeEGp(id1, id2), OrthogonalMetric[id1 & id2] ); return tempMultivector; }
public override IGaSymMultivectorTemp MapToTemp(int id1, int id2) { var tempMultivector = GaSymMultivector.CreateZeroTemp(TargetGaSpaceDimension); tempMultivector.SetTermCoef( id1 ^ id2, GMacMathUtils.IsNegativeEGp(id1, id2), OrthonormalMetric.GetExprSignature(id1 & id2) ); return(tempMultivector); }
public override GaSymMultivectorTerm MapToTerm(int id1, int id2) { return(GaSymMultivectorTerm.CreateTerm( TargetGaSpaceDimension, id1 ^ id2, GMacMathUtils.IsNonZeroEFdp(id1, id2) ? (GMacMathUtils.IsNegativeEGp(id1, id2) ? Mfs.Minus[OrthonormalMetric.GetExprSignature(id1 & id2)] : OrthonormalMetric.GetExprSignature(id1 & id2)) : Expr.INT_ZERO )); }
public override IGaSymMultivectorTemp MapToTemp(int id1, int id2) { var tempMultivector = GaSymMultivector.CreateZeroTemp(TargetGaSpaceDimension); tempMultivector.SetTermCoef( id1 ^ id2, GMacMathUtils.IsNegativeEGp(id1, id2), Expr.INT_ONE ); return(tempMultivector); }
public bool LookupIsNegEGp() { var flag = false; for (var id1 = 0; id1 < 1024; id1++) { for (var id2 = 0; id2 < 1024; id2++) { flag = flag | GMacMathUtils.IsNegativeEGp(id1, id2); } } return(flag); }
public override IGaSymMultivectorTemp MapToTemp(int id1, int id2) { var tempMultivector = GaSymMultivector.CreateZeroTemp(TargetGaSpaceDimension); if (GMacMathUtils.IsNonZeroESp(id1, id2)) { tempMultivector.SetTermCoef( 0, GMacMathUtils.IsNegativeEGp(id1, id1), OrthogonalMetric[id1] ); } return(tempMultivector); }
public override IGaSymMultivectorTemp MapToTemp(int id1, int id2) { var tempMultivector = GaSymMultivector.CreateZeroTemp(TargetGaSpaceDimension); if (GMacMathUtils.IsNonZeroESp(id1, id2)) { tempMultivector.AddFactor( 0, GMacMathUtils.IsNegativeEGp(id1, id1), Expr.INT_ONE ); } return(tempMultivector); }