jsci.maths.symbolic
Class Expression
- java.lang.Object
-
- jsci.maths.symbolic.Expression
-
- All Implemented Interfaces:
- java.io.Serializable, Field.Member, Ring.Member, AbelianGroup.Member, Member
- Direct Known Subclasses:
- Constant, Evaluation, Function, Variable
public abstract class Expression extends java.lang.Object implements Field.Member
The basic abstract class for doing analytical calculations.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor and Description Expression()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method and Description AbelianGroup.Memberadd(AbelianGroup.Member g)The group composition law.static Expressiondifference(AbelianGroup.Member a, AbelianGroup.Member b)Method for generating an Expression by a formal operation on a set memberExpressiondifferentiate(java.util.Hashtable ht)Differentiation of the expression with respect to the variablesabstract Expressiondifferentiate(Variable x)Differentiation of the expression with respect to a variableField.Memberdivide(Field.Member f)The multiplication law with inverse.static Expressiondivide(Field.Member f, Field.Member g)Method for generating an Expression by a formal operation on a set memberabstract Expressionevaluate()This method substitutes the variable with the variable values, if non-null; they can beContants or otherExpressions.Field.Memberinverse()Returns the inverse member.static Expressioninverse(Field.Member f)Method for generating an Expression by a formal operation on a set memberstatic voidmain(java.lang.String[] args)Put some expressions like "sin(2*x)/x+3/z" in the command line.Ring.Membermultiply(Ring.Member r)The multiplication law.AbelianGroup.Membernegate()Returns the negative member.static Expressionnegative(AbelianGroup.Member r)Method for generating an Expression by a formal operation on a set memberstatic Expressionpower(Field.Member f, int g)Method for generating an Expression by a formal operation on a set memberstatic Expressionproduct(Ring.Member[] args)Method for generating an Expression by a formal operation on a set memberstatic Expressionproduct(Ring.Member a, Ring.Member b)Method for generating an Expression by a formal operation on a set memberRing.Memberrise(int f)Power of an expression.AbelianGroup.Membersubtract(AbelianGroup.Member g)The group composition law with inverse.static Expressionsum(AbelianGroup.Member[] args)Method for generating an Expression by a formal operation on a set memberstatic Expressionsum(AbelianGroup.Member a, AbelianGroup.Member b)Method for generating an Expression by a formal operation on a set member
-
-
-
Method Detail
-
differentiate
public Expression differentiate(java.util.Hashtable ht)
Differentiation of the expression with respect to the variables- Parameters:
ht- table with variable / derivative order
-
differentiate
public abstract Expression differentiate(Variable x)
Differentiation of the expression with respect to a variable- Parameters:
x- the variable
-
evaluate
public abstract Expression evaluate()
This method substitutes the variable with the variable values, if non-null; they can beContants or otherExpressions. Simplification is performed.- Returns:
- the evaluated Expression. Can be a Constant.
-
inverse
public Field.Member inverse()
Description copied from interface:Field.MemberReturns the inverse member.- Specified by:
inversein interfaceField.Member- Returns:
- the inverse member.
-
divide
public Field.Member divide(Field.Member f)
The multiplication law with inverse.- Specified by:
dividein interfaceField.Member- Parameters:
f- a field member
-
multiply
public Ring.Member multiply(Ring.Member r)
The multiplication law.- Specified by:
multiplyin interfaceRing.Member- Parameters:
r- a ring member
-
add
public AbelianGroup.Member add(AbelianGroup.Member g)
The group composition law.- Specified by:
addin interfaceAbelianGroup.Member- Parameters:
g- a group member
-
negate
public AbelianGroup.Member negate()
Returns the negative member.- Specified by:
negatein interfaceAbelianGroup.Member
-
subtract
public AbelianGroup.Member subtract(AbelianGroup.Member g)
The group composition law with inverse.- Specified by:
subtractin interfaceAbelianGroup.Member- Parameters:
g- a group member
-
rise
public Ring.Member rise(int f)
Power of an expression. Only constant and integer exponent.- Parameters:
f- the exponent.
-
negative
public static Expression negative(AbelianGroup.Member r)
Method for generating an Expression by a formal operation on a set member
-
sum
public static Expression sum(AbelianGroup.Member a, AbelianGroup.Member b)
Method for generating an Expression by a formal operation on a set member
-
sum
public static Expression sum(AbelianGroup.Member[] args)
Method for generating an Expression by a formal operation on a set member
-
difference
public static Expression difference(AbelianGroup.Member a, AbelianGroup.Member b)
Method for generating an Expression by a formal operation on a set member
-
product
public static Expression product(Ring.Member a, Ring.Member b)
Method for generating an Expression by a formal operation on a set member
-
product
public static Expression product(Ring.Member[] args)
Method for generating an Expression by a formal operation on a set member
-
inverse
public static Expression inverse(Field.Member f)
Method for generating an Expression by a formal operation on a set member
-
divide
public static Expression divide(Field.Member f, Field.Member g)
Method for generating an Expression by a formal operation on a set member
-
power
public static Expression power(Field.Member f, int g)
Method for generating an Expression by a formal operation on a set member
-
main
public static void main(java.lang.String[] args) throws ParseExceptionPut some expressions like "sin(2*x)/x+3/z" in the command line. The program writes the expression, the simplifyed expression and the derivative.- Throws:
ParseException
-
-
DMelt 3.0 © DataMelt by jWork.ORG