Hi,

On Fri, Mar 27, 2009 at 5:58 AM, Stan Schymanski <schym...@gmail.com> wrote:
> I was thinking of custom defined latex representations of different
> variables or functions, similar to the example I showed in my first
> email in this thread. Basically, I would like to be able to give
> working names to variables (e.g. sui), but display them as I would in
> a paper if I use the show command (e.g. $s_{u,i}$). I can define this
> by
>
> var('sui')
> sui._latex_ = lambda: 's_{u,i}'
>
> but as soon as define the variable as a function, e.g.
>
> var('t')
> sui(t) = function('sui',t)
>
> show(sui) does not display correctly any more. So I think that the
> problem with the latex representation of functions is not limited to
> greek letters,

After playing with the issue, I feel that using existing _latex_ method
to define a custom-latex-expression for symbolic functions is bit tricky.

However, I could easily write a new method which works as follows
-----------------------------------------
sui(x) = function('sui',x)
sui(x).set_latex('s_{u,i}')
latex(sui(x))
----
s_{u,i}\left(x\right)
-----------------------------------------
It seems to work well.  set_latex method is defined as

-----
def set_latex(self, expr=None):
    """
    Set custom LaTeX representation for a symbolic function
    """
    from sage.misc.latex import user_defined_latex_dict as ldict
    key = self._f._name
    if expr is not None:
        ldict[key] = expr
    elif key in ldict:
        del ldict[key]
     return None
-----
To construct latex symbols for symbolic functions,
new "latex_function_name" now checks whether
"user_defined_latex_dict" has any key for the given function.

Feel free to post if you have further suggestions.

Cheers,
Golam

--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to