| atlas[Constants] - declaration of constants Calling Sequence: Constants(C1, C2, ..., Ci, ... , Cn) Parameters: C1, C2, ..., Ci, ... , Cn - constants identifiers Description: - In the atlas package any identifier is treated as 0-form i.e. as non-constant scalar (if it not declared as constant, p-form, tensor etc. (see atlas[types] )).
- The Constants procedure declares constants.
- In the atlas package constants are constant 0-forms.
- Some constants are predefined such as Catalan, Pi, I and _Z (for RootOf procedure)
- Constant identifier can be symbol or indexed either.
Examples: restart: with(atlas): Declare some constants: Constants(lambda,alpha[1],C,c[k]); ![{Catalan, I, _Z, Pi, C, alpha[1], c[k], lambda, -I}](prod/atlas/help/images/Constants1.gif)
Verify that C and c[k] are constants using kind (see atlas[kind] ) and type procedures: kind(C); ![[0, 0]](prod/atlas/help/images/Constants2.gif)
type(C,const); 
kind(c[i]); ![[0, 0]](prod/atlas/help/images/Constants4.gif)
type(c[j],const); 
type(c[3],const); 
'd(Sum(c[i]*x[i],i=1..n))'=d(Sum(c[i]*x[i],i=1..n)); ![d(Sum(c[i]*x[i],i = 1 .. n)) = Sum(c[i]*d(x[i]),i = 1 .. n)](prod/atlas/help/images/Constants7.gif)
Verify that lambda is a constant using exterior derivative operator (see atlas[d] ): 'd(lambda)'=d(lambda); 
Some more verifications: 'd(lambda*F+alpha[1]*G-Pi*S)'=d(lambda*F+alpha[1]*G-Pi*S); ![d(lambda*F+alpha[1]*G-Pi*S) = lambda*d(F)+alpha[1]*d(G)-Pi*d(S)](prod/atlas/help/images/Constants9.gif)
As F, G, S was not declared as something thus they are nonconstant scalars (0-forms) by defaults: 'd(F*G)'=d(F*G); 
For better understanding (see atlas[Functions] ): Functions(S=S(x,y),y=y(z)); 
Now S and y are functions: 'd(y)'=d(y); 
Obviously that: 'd(S)'=d(S); 
And corresponding exterior product (see atlas[`&^`] ) is: 'd(S)&^d(y)'=d(S)&^d(y); 
As n is 0-form (just as x) then: 'd(x^n)'=d(x^n); 
declared as a constant thus: 'd(x^lambda)'=d(x^lambda);

Let's see "who is who" Who([S,F,lambda,x,y]);
S: function
F: 0 - form
lambda: constant
x: 0 - form
y: function
Who(); ![PIECEWISE([{}, Domains],[{}, Mappings],[{}, Tensors],[{}, Forms],[{Catalan, I, _Z, Pi, C, alpha[1], c[k], lambda, -I}, Constants],[{y, S}, Functions])](prod/atlas/help/images/Constants18.gif)
See Also: atlas , atlas[Functions] , atlas[Forms] , atlas[Vectors] , atlas[Tensors] , atlas[d] , atlas[`&^`] , atlas[Who] . |