Hi,
dsolve(des union ics); is sometimes returning a solution, other times not. The reason for that is that this is a system with three unknowns, and at the time of uncoupling the system there are six different ways of doing so, and only two of them lead to a solvable problem. This also tells what the workaround is ... But let's see the problem first: for R in combinat:-permute([x1,x2,x3]), try dsolve(des union ics, R(t)) and you will see that only when x3 comes in the last position in R is that the uncoupled linear system is solvable in current Maple.
So the workaround is to give the ranking R basically saying "which unknown should be solved in terms of which other" (see explanations of rankings in ?PDEtools:-casesplit and elsewhere). For example, this returns a solution always:
> dsolve(des union ics, [x1, x2, x3](t));
... solution here ...
# Verify that the solution solves the system and matches the initial conditions
> odetest(%, des union ics);
{0}
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
I am not sure whether I am following the thread correctly, but dsolve(des, ics) cannot be correct. The DEs and Initial Conditions should be given in one and the same set, as R.Israel shows.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
I am not sure whether I am following the thread correctly, but dsolve(des, ics) cannot be correct. The DEs and Initial Conditions should be given in one and the same set, as R.Israel shows.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi,
I replied to those threads some minutes ago - no it is not somewhat expected that things die unresolved :) Seriously speaking, sometimes it is easy to reply fast, other times not, for unforeseeable reasons. But we normally catch up and it is a pleasure to debate the features and design of this exciting Physics project, BTW unique in the existing computer algebra systems.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
Could you be more explicit on the computation you want to do? Generally speaking, with Physics in Maple 11 you can operate with tensors in flat spacetime, that can also be quantum operators, anti or non commutative variables etc. The algebra of Dirac matrices and a representation for them, as well as for Pauli matrices, come with the package, Traces of expressions involving products of these objects are also computed and the algebraic perturbative expansion underlying a sequence of Feynman diagrams is also computed using the Physics:-FeynmanDiagrams command. Besides that, Fundiff performs functional differentiation and, you know, you can perform functional integration in terms of Functional differentiation provided that we are interested in the perturbative expansion of the object. I used Physics for a number of QFT computations and in fact the precursor of this package is called QFT.
Having said that, many things are still to be done, like returning the actual Feynman graphs, not the analytical expression behind them, providing complete representations for spinors of different types, making the package handle curved spaces, supersymmetry notation, and other etc. The package is evolving into that direction.
So if you could make more explicit what is the computation you have in hands, depending on what you post it may be possible to do some or all of it already in Maple 11.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
I need to see the concrete computation (could it be directly in a Maple worksheet?) to understand what you want to do and help you. Just from what I read above I can say that Simplify only does especific simplifications, all described in ?Physics:-Simplify, and does not do example-driven collect or factor operators. For that purpose you can use the rest of the commands of the Maple library including eval, subs, collect, factor, etc. Note however that apart from the syntax commands (e.g. eval and subs), the others do not operate on noncommutative products or powers having a noncommutative base.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
I need to see the concrete computation (could it be directly in a Maple worksheet?) to understand what you want to do and help you. Just from what I read above I can say that Simplify only does especific simplifications, all described in ?Physics:-Simplify, and does not do example-driven collect or factor operators. For that purpose you can use the rest of the commands of the Maple library including eval, subs, collect, factor, etc. Note however that apart from the syntax commands (e.g. eval and subs), the others do not operate on noncommutative products or powers having a noncommutative base.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
I do not see the code you seem to be referring - in addition, as in the previous reply, it is necessary to see how are you defining c and C in order to see what is what would be expected.
Regards
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
I do not see the code you seem to be referring - in addition, as in the previous reply, it is necessary to see how are you defining c and C in order to see what is what would be expected.
Regards
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
In order to help you please post the input lines you used to define the operators C and c. Just from what you show, if c[1]^2 is not returning zero, then you seem to have failed in defining it as an anticommutative operator or the like.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi
In order to help you please post the input lines you used to define the operators C and c. Just from what you show, if c[1]^2 is not returning zero, then you seem to have failed in defining it as an anticommutative operator or the like.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi,
The main help page for Physics is ?Physics and the three links found there that I'd mention as more relevant are ?Physics,examples, ?Physics,conventions and ?Physics,Setup. In ?Physics,examples you see some problems involving annihilation and creation operators (see last section on Quantum Mechanics). Giving a look at how these commands are actually used is frequently more useful than reading a complete description of the functionality in a help page. Regarding the help pages, I'd recommend reading the calling sequence, first paragraph (introductory) and jump to the examples, and only read the rest if there is something unclear in the examples.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi,
The main help page for Physics is ?Physics and the three links found there that I'd mention as more relevant are ?Physics,examples, ?Physics,conventions and ?Physics,Setup. In ?Physics,examples you see some problems involving annihilation and creation operators (see last section on Quantum Mechanics). Giving a look at how these commands are actually used is frequently more useful than reading a complete description of the functionality in a help page. Regarding the help pages, I'd recommend reading the calling sequence, first paragraph (introductory) and jump to the examples, and only read the rest if there is something unclear in the examples.
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi,
If c and C are annihilation/creation operators there are various advantages in using the Annihilation and Creation commands of Physics in that the properties of these objects are set automatically. See the corresponding pages. So if this is the case you can then construct these operators using those two commands and set the algebrarule with KroneckerDelta as you show, using Setup, and everything works as expected.
If that is not the case, so if c and C are NOT annihilation/creation operators, then the first Setup calling sequence is OK, and where you say "Troubles begin if I want to define rules for mixing the c's and the C's like [setting their anticommutator different from zero]", what is happening is that the Physics routines are assuming (they should not ..) that the c[i] and C[j] belong to the same space, therefore they anticommute between themselves, as if they were all part of the same set of anticommuting variables, for example as if this set of variables/operators were entered using the anticommutativeprefix. This assumption that members of different anticommuting groups anticommute between themselves is not correct and is fixed in the upcomming Maple.
Note anyway that the (undesired) anticommutation happens regardles of calling simplify, and also that the simplificator of the Physics package is Simplify, not simplify (this may change in order to have Simplify called automatically from inside simplify...).
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications
Hi,
If c and C are annihilation/creation operators there are various advantages in using the Annihilation and Creation commands of Physics in that the properties of these objects are set automatically. See the corresponding pages. So if this is the case you can then construct these operators using those two commands and set the algebrarule with KroneckerDelta as you show, using Setup, and everything works as expected.
If that is not the case, so if c and C are NOT annihilation/creation operators, then the first Setup calling sequence is OK, and where you say "Troubles begin if I want to define rules for mixing the c's and the C's like [setting their anticommutator different from zero]", what is happening is that the Physics routines are assuming (they should not ..) that the c[i] and C[j] belong to the same space, therefore they anticommute between themselves, as if they were all part of the same set of anticommuting variables, for example as if this set of variables/operators were entered using the anticommutativeprefix. This assumption that members of different anticommuting groups anticommute between themselves is not correct and is fixed in the upcomming Maple.
Note anyway that the (undesired) anticommutation happens regardles of calling simplify, and also that the simplificator of the Physics package is Simplify, not simplify (this may change in order to have Simplify called automatically from inside simplify...).
Edgardo S. Cheb-Terrab
Research Fellow, Maplesoft
Editor for Computer Algebra, Computer Physics Communications