|
JavaView© v3.95.000 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjv.object.PsObject
jv.function.PuFunction
Describes one or more functions in terms of an expression string with variables and constants. Strings may be interactively edited, for example, when studying parametrized surfaces.
Default variable names are {"u", "v", "w"} or, if more created with more than
three variables, {"u0", "u1", "u2", ...}. A good practice is to specify individual variables
directly after creating a function object using setVariables(String []).
Default names of the component functions are {"x", "y", "z", "t"} or, if more created with more than
four component functions, {"F[0]", "F[1]", ...}. A good practice is to specify individual expression names
directly after creating a function object using setExpressionNames(String []).
The following constant(s) are registered by default: {"Pi", "pi"}.
An arbitrary number of additional parameters can be added to a function.
Usage:
// Graph of real-valued function in one variable
PuFunction function = new PuFunction(1, 1);
m_function.setName("Sin Function");
m_function.setVariables(new String[] {"u"});
m_function.setExpression("sin(u)");
double result = m_function.eval(double arg);
or
// Parametrized surface from R2 to R3
PuFunction function = new PuFunction(2, 3);
m_function.setName("Kuen Surface");
m_function.setVariables(new String[] {"u", "v"});
m_function.setExpression(0, "2./(1.+(u*sin(v))^2)*sqrt(1.+u*u)*sin(v)*cos(u-atan(u))");
m_function.setExpression(1, "2./(1.+(u*sin(v))^2)*sqrt(1.+u*u)*sin(v)*sin(u-atan(u))");
m_function.setExpression(2, "log(tan(v/2.))+2./(1.+(u*sin(v))^2)*cos(v)");
m_function.eval(double [] result, double [] arg);
Later, a function can be evaluated by calling
m_function.eval(double [] result, double [] arg);
See jv.thirdParty.expr.Expr
for a list and notation of functions.
Expr,
Serialized Form| Field Summary |
| Fields inherited from class jv.object.PsObject |
HAS_CONFIG_PANEL, HAS_INFO_PANEL, HAS_LABEL_PANEL, HAS_MATERIAL_PANEL, HAS_TEXTURE_PANEL, HAS_VECTOR_PANEL, INSPECTOR_INFO, INSPECTOR_INFO_EXT, IS_DELETED, IS_FIXED, IS_FOCUSSED, IS_PICKED, IS_SELECTED, IS_USED, NUM_TAGS |
| Constructor Summary | |
PuFunction()
|
|
PuFunction(int numVariables,
int numFunctions)
|
|
| Method Summary | |
void |
addParameter(PuDouble parm)
Add adjustable function parameter to all expressions. |
void |
addParameter(java.lang.String symbol,
double initialValue)
Add additional variables to all expressions, usually used as constants or parameters. |
java.lang.Object |
clone()
Duplicate a function object by recursively cloning all instance variables. |
void |
copy(PsObject object)
Copies data from given function object. |
double |
eval()
Evaluate a real-valued function of one variable. |
double |
eval(double arg)
Evaluate a real-valued function of one variable. |
boolean |
eval(double[] result)
Evaluate an m-dim functions of n-variables'. |
boolean |
eval(double[] result,
double arg)
Evaluate an m-dim functions of n-variables'. |
boolean |
eval(double[] result,
double[] arg)
Evaluate an m-dim functions of n-variables'. |
double |
eval(int ind)
Evaluate a component of an m-dim functions of n-variables'. |
double |
eval(int ind,
double arg)
Evaluate a component of an m-dim functions of n-variables'. |
double |
eval(int ind,
double[] arg)
Evaluate a component of an m-dim functions of n-variables'. |
java.lang.String |
getExpression()
Get string of function if number of functions is 1. |
java.lang.String |
getExpression(int ind)
Get string of function with index ind. |
java.lang.String |
getExpressionName()
Get string of function if number of functions is 1. |
java.lang.String |
getExpressionName(int ind)
Get string of function with index ind. |
java.lang.String[] |
getExpressionNames()
Get string of function if number of functions is 1. |
java.lang.String[] |
getExpressions()
Get strings of all function. |
int |
getNumFunctions()
Get number of functions. |
int |
getNumParameters()
Get number of parameters used in current functions. |
int |
getNumVariables()
Get number of argument variables used in current functions. |
PuDouble |
getParameter(java.lang.String symbol)
Return stored function parameters as PuDouble objects. |
java.util.Enumeration |
getParameters()
Return stored function parameters as PuDouble objects. |
java.lang.String[] |
getVariables()
Get array of variables names. |
void |
init()
If instance has missing name then assign default name 'Object_NUMBER' where number is the total number of already created instances. |
boolean |
setDefExpression(int ind,
java.lang.String expr)
Set string of function with index ind.
|
boolean |
setExpression(int ind,
java.lang.String expr)
Set string of function with index ind.
|
boolean |
setExpression(java.lang.String expr)
Supply expression of function if number of functions is 1. |
boolean |
setExpression(java.lang.String[] exprArr)
Deprecated. since JavaView 3.50.003, use setExpressions(String []). |
boolean |
setExpression(java.lang.String expr,
int ind)
Deprecated. since JavaView 3.50.002, use setExpression(int, String); |
void |
setExpressionName(int ind,
java.lang.String name)
Set name of individual function expression. |
void |
setExpressionName(java.lang.String name)
Set name of function expression. |
void |
setExpressionNames(java.lang.String[] name)
Set names of all function expressions. |
boolean |
setExpressions(java.lang.String[] exprArr)
Supply exressions of all functions. |
void |
setNumFunctions(int numFunctions)
Set number of functions. |
void |
setNumVariables(int numVariables)
Set number of argument variables used in current functions. |
void |
setParameter(java.lang.String symbol,
double value)
Set value of variable in all expressions, usually used as constants or parameters. |
void |
setVariables(java.lang.String[] symbol)
Add symbols of variables in all expressions. |
java.lang.String |
toString()
Create a multi-line string representation with detailed information about all instance variables. |
boolean |
update(java.lang.Object event)
Update the class whenever a child has changed. |
| Methods inherited from class jv.object.PsObject |
addInspector, addUpdateListener, assureInspector, clearTag, clone, clone, getFather, getInfoPanel, getInspector, getName, getNumObjects, getSymbol, hasInspector, hasTag, hasUpdateListener, instanceOf, instanceOf, newInspector, newInspector, removeInspector, removeInspector, removeUpdateListener, setName, setParent, setSymbol, setTag, updatePanels |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public PuFunction()
public PuFunction(int numVariables,
int numFunctions)
| Method Detail |
public void init()
PsObject
init in class PsObjectpublic java.lang.Object clone()
clone in class PsObjectPsObject.copy(PsObject)public void copy(PsObject object)
copy in class PsObjectPsObject.clone()public java.lang.String toString()
toString in class PsObjectpublic boolean update(java.lang.Object event)
update in interface PsUpdateIfupdate in class PsObjectPsObject.setParent(PsUpdateIf),
PsObject.getFather(),
PsObject.addUpdateListener(PsUpdateIf)public void addParameter(PuDouble parm)
addParameter(String, double).
Use getParameter(String) to return parameter objects.
This function object is registered as update listener of the slider. Whenever the slider changes then this function object updates the corresponding variable value.
getParameter(String)public PuDouble getParameter(java.lang.String symbol)
addParameter(PuDouble) to store function parameter.
symbol - symbol of previously added PuDouble, see PuDouble#getSymbol().addParameter(PuDouble)public java.util.Enumeration getParameters()
addParameter(PuDouble) to store function parameter.
addParameter(PuDouble)public int getNumParameters()
public void addParameter(java.lang.String symbol,
double initialValue)
public void setParameter(java.lang.String symbol,
double value)
public int getNumVariables()
public void setNumVariables(int numVariables)
public java.lang.String[] getVariables()
public void setVariables(java.lang.String[] symbol)
public int getNumFunctions()
public void setNumFunctions(int numFunctions)
public java.lang.String getExpressionName()
public void setExpressionName(java.lang.String name)
public java.lang.String getExpressionName(int ind)
ind.
public void setExpressionName(int ind,
java.lang.String name)
public java.lang.String[] getExpressionNames()
public void setExpressionNames(java.lang.String[] name)
public java.lang.String[] getExpressions()
public java.lang.String getExpression()
public java.lang.String getExpression(int ind)
ind.
public boolean setExpression(java.lang.String expr)
public boolean setExpression(int ind,
java.lang.String expr)
ind.
String is trimmed, i.e. leading and trailing whitespace characters are removed using String.trim().
public boolean setDefExpression(int ind,
java.lang.String expr)
ind.
String is trimmed, i.e. leading and trailing whitespace characters are removed using String.trim().
public boolean setExpression(java.lang.String expr,
int ind)
ind.
If there exist no default function, then the first invocation of this method with a non-empty expression argument is assigned as default expression.
public boolean setExpression(java.lang.String[] exprArr)
public boolean setExpressions(java.lang.String[] exprArr)
public double eval(double arg)
arg - Value of function argument.
public double eval(int ind,
double arg)
ind - Component to evaluatearg - Value of function argument.
public boolean eval(double[] result,
double arg)
result - Existing array to contain the computed function values.arg - Value of function argument.
public double eval(int ind,
double[] arg)
ind - Component to evaluatearg - Array with value for each function argument.
public boolean eval(double[] result,
double[] arg)
result - Existing array to contain the computed function values.arg - Array with value for each function argument.
public double eval()
public double eval(int ind)
ind - Component to evaluate
public boolean eval(double[] result)
result - Existing array to contain the computed function values.
|
JavaView© v3.95.000 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||