Ask Your Question

cguo's profile - activity

2022-11-30 21:49:47 +0200 received badge  Notable Question (source)
2021-09-14 15:49:33 +0200 received badge  Famous Question (source)
2020-06-25 16:05:34 +0200 received badge  Popular Question (source)
2019-02-06 10:58:22 +0200 received badge  Notable Question (source)
2017-08-07 11:47:54 +0200 received badge  Popular Question (source)
2017-02-01 21:01:09 +0200 asked a question how to simplify differential form

Follow http://doc.sagemath.org/html/en/refer...

I try the source code:

r,theta=var('r,theta')

U=CoordinatePatch((r,theta))

F=DifferentialForms(U)

x=DifferentialForm(F,0,r*cos(theta))

y=DifferentialForm(F,0,r*sin(theta))

a=x.diff().wedge(y.diff())

the output is: (r*cos(theta)^2 + r*sin(theta)^2)*dr/\dtheta

then I want to simplify_trig to the coefficients. Unfortunately a.simplify_trig() not working and all the map_coefficients and map_item are not defined.

Although in such case I can use: a[0,1]=a[0,1].simplify_trig() to do the job, for general case, maybe a 3 form depends on 6 variables, it is very cumbersome to apply simplify_trig to each coefficients.

One ugly method is: for i in a._components: a[i]=a[i].simplify_trig()

However it depends to real implementation not the interface. I want to ask whether there is an elegant way to do the same job, but just rely on the interface of class sage.tensor.differential_form_element.DifferentialForm

2016-08-27 10:04:37 +0200 commented answer how to get the smith normal form of lambda matrix

it works. By the way, R.<x>=QQ[], I get a symbol x over QQ, R.<x>=RR[], I get a symbol over RR. The first time, I use x=var('x') to construct symbol x, so smith_form() not working. What is the stuff I actually get from var('x')? What ring it actually over?

2016-08-27 10:00:03 +0200 received badge  Scholar (source)
2016-08-14 18:39:35 +0200 received badge  Student (source)
2016-08-14 18:37:40 +0200 asked a question how to get the smith normal form of lambda matrix

Hi:

Right now, I know sage matrix can get the smith_form and elementary_divisors on pure integer matrix. But I want to get the same stuff on lambda matrix. What I actually mean is:

http://www.solitaryroad.com/c153.html (www.solitaryroad.com/c153.html) (my karma is not enough to put a direct link)

I directly construct a matrix and the minus lambda times identity matrix and call smith_form is not working. So how to get the smith normal form of lambda matrix in sagemath? Or if sagemath can not do that, which computer algebra system can do the job?