declare a function for compact display - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Differential Equations : PDEtools : PDEtools/declare

PDEtools[declare] - declare a function for compact display

PDEtools[undeclare] - undeclare a function for compact display

Calling Sequence

declare(f(x), g(x, y), '...')

declare(expr)

declare(prime = x)

declare(prime)

declare(copyasdisplayed = truefalse)

declare(copyasdisplayed)

undeclare(f(x), '...')

undeclare(expr)

undeclare(prime)

undeclare(all)

ON

OFF

show

Parameters

f(x)

-

function to be printed with compact display

expr

-

set, list, or sequence of expressions

prime = x

-

equation indicating the differentiation variable to be displayed with a prime, or just the keyword prime to query about its value

copyasdisplayed = ..

-

equation where the right-hand side is true or false (the default), or just the keyword copyasdisplayed to query about its value; when true, displayed output of declared functions and derivates is copied & pasted "as displayed", instead of the default behavior which is "as entered"

quiet

-

(optional) perform declarations without having information displayed on the screen

Description

• 

The purpose of this set of commands, declare, undeclare, show, ON, OFF, is to permit a simple, compact display of functions and derivatives on the screen. Typically, one declares functions by using declare(f(x, y, z)) with the result that fx,y,z is displayed as f (that is, only its name) as well as occurrences of indexed f, say as in fjx,y,z are displayed as fj. This avoids a significant part of redundant information on the screen. One can declare the prime variable and many functions at once.

• 

This scheme also displays all differentiation variables as indices, and permits declaring a prime variable so that, for functions of one variable, derivatives with respect to that declared prime variable are displayed with a prime.

• 

Different from macro and alias, this set of commands works with 'print/foo' routines, so it does not change the output, only its typesetting on the screen.

• 

When declare is called with an algebraic expression, each unknown function in the expression gets "declared".

  

Note: you cannot declare for compact display known functions of the mathematical language (cos, sin, etc.).

• 

Expressions involving declared functions or derivatives, that are compactly displayed on the screen, are copied and pasted as they were entered, not as they are displayed. For example declaring fx,y,z makes it be displayed as f, but copying that f from the output and pasting into an input line produces fx,y,z, not f. The same happens with derivatives displayed compactly as indexed or with primes '. However, it is sometimes convenient to copy and paste as displayed, for instance to paste formulas with format in an email, or in text in a worksheet. For that purpose, set the value of copyasdisplayed to true entering declare(copyasdisplayed = true);

• 

If no arguments are given to declare, the values of the copyasdisplayed, prime, and declared variables are reported. If the arguments prime or copyasdisplayed - just the keywords - are given, the corresponding values are reported.

• 

The command undeclare accepts the same types of arguments as declare does, that is, a function, a sequence of functions, or an algebraic expression. It is used to "undo" declarations previously done by using declare.

• 

declare and undeclare by default print informative messages when they are called. By using the optional argument 'quiet' these messages are suppressed.

• 

When declare is first called, the scheme for compact display is turned ON. However, to turn explicit the actual value of an expression being displayed compactly, you can toggle this feature OFF. Two macros ON and OFF are provided for that purpose. Also, in the ON mode, the macro show displays the last expression in OFF mode.

• 

These functions are part of the PDEtools package, and so they can be used in the form declare(..) and undeclare(..) only after executing the command with(PDEtools). However, they can always be accessed through the long form of the command by using PDEtools[declare](..) or PDEtools[undeclare](..).

Examples

Declare y(x) to be displayed as y, and x to be the 'prime' differentiation variable.

with(PDEtools):

declare(y(x), prime=x);

yxwill now be displayed asy

derivatives with respect toxof functions of one variable will now be displayed with '

(1)

Check the declarations.

declare();

Declared :

yxto be displayed asy

derivatives with respect toxof functions of one variable are being displayed with '

Displayed derivatives and declared functions will be copied and pasted "as they were entered"

(2)

declare(prime);

derivatives with respect toxof functions of one variable are being displayed with '

(3)

Following is an ODE displayed by using the scheme for compact printing.

ode := diff(diff(y(x),x),x)*diff(y(x),x)*y(x)*f(x)-2*diff(y(x),x)^3*x^6
+ 2*diff(y(x),x)^2*y(x)*diff(g(x),x) + y(x)^5;

ode:=y''y'yfx2y'3x6+2y'2yg'+y5

(4)

Turn the scheme OFF, print the ODE, and then turn the scheme ON again.  Compare the results.

OFF;

ode;

ⅆ2ⅆx2yxⅆⅆxyxyxfx2ⅆⅆxyx3x6+2ⅆⅆxyx2yxⅆⅆxgx+yx5

(5)

ON;

ode;

y''y'yfx2y'3x6+2y'2yg'+y5

(6)

Use the show command to display the ODE in standard format, to copy and paste to an input line, but keep the scheme ON.

show;

ⅆⅆxⅆⅆxyxⅆⅆxyxyxfx2ⅆⅆxyx3x6+2ⅆⅆxyx2yxⅆⅆxgx+yx5

(7)

ode;

y''y'yfx2y'3x6+2y'2yg'+y5

(8)

Now undeclare all the functions.

undeclare(prime);

There is no more prime differentiation variable; all derivatives will be displayed as indexed functions

(9)

ode;

yx,xyxyfx2yx3x6+2yx2ygx+y5

(10)

undeclare(all);

yxwill now be displayed *as is*

(11)

declare();

Nothing declared

(12)

OFF;

Here is a PDE example.

pde := x*diff(f(x,y),y)-diff(f(x,y),x)-f(x,y)^2*g(x)/h(y);

pde:=xyfx,yxfx,yfx,y2gxhy

(13)

ON;

pde;

xfyfxfx,y2gxhy

(14)

During a working session, declare the main function of the problem to avoid redundant information throughout the solution.

declare(f(x,y));

fx,ywill now be displayed asf

(15)

pde;

xfyfxf2gxhy

(16)

You can declare all the functions in a given DE or PDE directly.

declare(pde);

fx,ywill now be displayed asf

gxwill now be displayed asg

hywill now be displayed ash

(17)

pde;

xfyfxf2gh

(18)

It is also possible to selectively undeclare one (or many) functions. When doing that, one can give the function or its name.

undeclare(g);

gxwill now be displayed *as is*

(19)

pde;

xfyfxf2gxh

(20)

undeclare(all);

fx,ywill now be displayed *as is*

hywill now be displayed *as is*

(21)

pde;

xfyfxfx,y2gxhy

(22)

OFF;

pde;

xyfx,yxfx,yfx,y2gxhy

(23)

See Also

DEtools, dsolve, dsolve,education, PDEtools, pdsolve, print


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam