static AddToTree.Tree FactorActivationFirstMinuseOrPluseFx(AddToTree.Tree Dummy, ref UknownIntegralSolver UIS) { if (Dummy == null) { return(Dummy); } if ((FactorActivation.SuitableForFactorActivation(Dummy.CopyNewTree(Dummy))) && ((Dummy.SampleAccess == "+") || (Dummy.SampleAccess == "-"))) { FactorActivation.FactorActivationOnlyMuLnodesListedFx(Dummy.CopyNewTree(Dummy)); Dummy = FactorActivation.FactorActivationActionFx(Dummy, ref UIS); } while (!(NotAbledFactors.ISEmpty())) { NotAbledFactors.DELETEFromTreeFirstNode(); } while (!(AbledFactors.ISEmpty())) { AbledFactors.DELETEFromTreeFirstNode(); } while (!(ONLYMULnODE.ISEmpty())) { ONLYMULnODE.DELETEFromTreeFirstNode(); } while (!(MULATEDELEMENTS.ISEmpty())) { MULATEDELEMENTS.DELETEFromTreeFirstNode(); } Dummy.LeftSideAccess = FactorActivation.FactorActivationFirstMinuseOrPluseFx(Dummy.LeftSideAccess, ref UIS); Dummy.RightSideAccess = FactorActivation.FactorActivationFirstMinuseOrPluseFx(Dummy.RightSideAccess, ref UIS); return(Dummy); }
static void FactorActivationOnlyMuLnodesListedFx(AddToTree.Tree Dummy) { if (IS.IsNotMinusAndPluseInNode(Dummy)) { if (!(ONLYMULnODE.FINDTreeWithOutThreadConsideration(Dummy))) { ONLYMULnODE.ADDToTree(Dummy); return; } } FactorActivation.FactorActivationOnlyMuLnodesListedFx(Dummy.LeftSideAccess); FactorActivation.FactorActivationOnlyMuLnodesListedFx(Dummy.RightSideAccess); return; }