Dear Michel, On 16 Mai, 12:16, Michel <michel.vandenbe...@uhasselt.be> wrote: > Here is one thing I find difficult to use about sage: the help system.
I don't know if sage's help system is properly documented in the manuals. But I daresay that the help system of sage is quite efficient. Here are some typical ways to get help (that, I guess, most people developing code for sage use frequently): 1. If you have a guess on how a function name starts then type it in and press the TAB-key. Admittedly, in the case of solve, you only get "solve" and "solve_mod", so, this does not help much for your problem. 2. If you know the command then use a question mark to get information on it. So, in the case of solve, you would do sage: solve? and it will give you some help. I don't see that your question from your other thread is answered by the solve-documentation, though. But as much as I know, what you get is exactly the same as the corresponding page in the sage reference manual, since this is autogenerated by the functions' documentation. 3. If you are interested what happens behind the scenes (and this is sometimes very enlightening), use *two* question marks: sage: solve?? This gives you the source code (including its documentation) of the solve command. 4. Don't forget that Python (the underlying language of Sage) is object oriented. Hence, often you have some object X, and you would usually not have a function that does something with X, but X would provide some methods that you can call. You can see all methods of X by typing X plus '.' plus (perhaps) the beginning of the method name, plus TAB-key. Some method names start with underscore ('_'), and to see them, you have to type '_' before the TAB-key. Example: To see all methods starting with 'di' of an integer, you may do sage: a=3 sage: a.di<TAB> and get a.digits a.divides a.divide_knowing_divisible_by a.divisors Again, if you know a method name then, e.g., a.digits? or aa.digits?? will hopefully give you more information. 5. If the above does not help, you can search the sources. If you type 'sea' and hit the TAB-key, you can see that there are three search- commands: search_def, search_doc and search_src. For example, if you do sage: search_src('numerical', 'solve') then you are pointed to calculus/calculus.py: This is *not* a numerical solver - use ``find_root`` to calculus/calculus.py: solve for self == 0 numerically on an interval. calculus/calculus.py: This is not a numerical solver - use ``find_root`` to solve calculus/desolvers.py: This implements Euler's method for finding numerically the solution of the 1st order calculus/desolvers.py: This implements Euler's method for finding numerically the solution of the 1st order calculus/desolvers.py: To numerically approximate y(1), where (1+t^2)y''+y'-y=0, y(0)=1,y'(0)=-1, calculus/desolvers.py: To numerically approximate y(1), where y''+ty'+y=0, y(0)=1,y'(0)=0: calculus/desolvers.py: and plots using Euler's method the numerical solution of You see that most hits are in calculus.py. And then, you can do sage: from sage.calculus import calculus sage: calculus? to see the documentation, or sage: calculus?? to see all 10426 lines of the code. Best regards, Simon --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---