public override bool IsConstant(ArgumentValue Non_Constant) { if (Argument != Non_Constant) { return(true); } return(false); }
public bool IsConstant(ArgumentValue Non_Constant) { if (A.IsConstant(Non_Constant) && B.IsConstant(Non_Constant)) { return(true); } return(false); }
public override SyntaxBlock Derivative(ArgumentValue ArgumentToDerive) { if (ArgumentToDerive != Argument) { return(new NumericConstant(0)); } return(new NumericConstant(1)); }
public SyntaxBlock Derivative(ArgumentValue ArgumentToDerive) { return(new NumericConstant(0)); }
public bool IsConstant(ArgumentValue Non_Constant) { return(true); }
public SyntaxBlock Derivative(ArgumentValue ArgumentToDerive) { return(new Sum(new Product(A.Derivative(ArgumentToDerive), B), new Product(A, B.Derivative(ArgumentToDerive)))); }
public abstract bool IsConstant(ArgumentValue Non_Constant);
protected Abstract_variable(ArgumentValue Argument, bool alwaysConstant) { this.isAlwaysConstant = alwaysConstant; this.Argument = Argument; }
public abstract SyntaxBlock Derivative(ArgumentValue ArgumentToDerive);
/// <summary> /// Creates a variable. /// </summary> /// <param name="Argument">An instance of the ArgumentValue class with which the value is controlled.</param> public Variable(ArgumentValue Argument) : base(Argument, false) { }
/// <summary> /// Creates a variable constant. Acts as a constant that can have its value changed. /// </summary> /// <param name="Argument">An instance of the ArgumentValue class with which the value is controlled.</param> public VariableConstant(ArgumentValue Argument) : base(Argument, true) { }
public bool IsConstant(ArgumentValue Non_Constant) { return(A.IsConstant(Non_Constant) && B.IsConstant(Non_Constant)); }
public SyntaxBlock Derivative(ArgumentValue ArgumentToDerive) { //(A'*B + -1(B'*A))/(B*B) == (A'*B - B'*A)/B^2 return(new Quotient(new Sum(new Product(A.Derivative(ArgumentToDerive), B), new Product(new NumericConstant(-1), new Product(B.Derivative(ArgumentToDerive), A))), new Product(B, B))); }