On Aug 19, 2009, at 12:48 AM, Viny wrote:

>
> Hi !
>
> phi, v, u, Cxy are functions of  (x,y). I use the command sage_eval
> (string, locals = { 'E':E, 'u':u, 'v':u, 'phi'=phi, ......}). string
> it's the expression. It's the only way i found for chang it to
> expression but it generate an error. Perhaps this come from the
> function the eval of phi[x,y], v[x,y],

Ah, so this is a Mathematica string where a[x,y] is actually a  
function application. You might be able to get away with

s.replace("[", "(").replace("]", ")")

>
> On 18 août, 11:02, Robert Bradshaw <rober...@math.washington.edu>
> wrote:
>> On Aug 17, 2009, at 3:45 AM, Viny wrote:
>>
>>
>>
>>> Hello!
>>
>>> Is it possible to have the equivalent sage expression of the  
>>> following
>>> string, by using sage_eval() or another function without getting  
>>> this
>>> error in while the transcription :
>>
>> There was talk a while back about x[1] giving a sub-scripted x, but I
>> don't think anything concrete came of it (IIRC there were bigger
>> symbolic changes going on at the time). What is phi, v, etc. in your
>> context?
>>
>>
>>
>>> /lib/python2.6/site-packages/sage/misc/sage_eval.py", line 199, in
>>> sage_eval return eval(source, sage.all.__dict__, locals) File
>>> "<string>", line 1, in <module> TypeError:
>>> 'sage.symbolic.expression.Expression' object is unsubscriptable
>>
>>> A part of the string is:
>>
>>> [(dx**4*dy**4*E**(2*phi[0, 0])*epsr**2* ((16*ni*(Cxy[0, 0] + (phi[0,
>>> -1] - 2*phi[0, 0] + phi[0, 1])/dy**2 +   (phi[-1, 0] - 2*phi[0, 0] +
>>> phi[1, 0])/dx**2 +   (ni*(-(E**phi[0, 0]*u[0, 0]) + v[0, 0]/E**phi 
>>> [0,
>>> 0]))/epsr))/  (E**phi[0, 0]*epsr) + (8*(dx**2 + dy**2)* (dx**2* 
>>> ((-4 +
>>> phi[0, -1] - phi[0, 1])*v[0, -1] + 8*v[0, 0] +  (-4 - phi[0, -1]  
>>> + phi
>>> [0, 1])*v[0, 1]) +   dy**2*((-4 + phi[-1, 0] - phi[1, 0])*v[-1, 0] +
>>> 8*v[0, 0] +  (-4 - phi[-1, 0] + phi[1, 0])*v[1, 0])))/ 
>>> (dx**4*dy**4) +
>>> ((-4 + phi[0, 0] - phi[0, 2])* (dx**2*((-4 + phi[0, 0] - phi[0,  
>>> 2])*v
>>> [0, 0] + 8*v[0, 1] +  (-4 - phi[0, 0] + phi[0, 2])*v[0, 2]) +    
>>> dy**2*
>>> ((-4 + phi[-1, 1] - phi[1, 1])*v[-1, 1] + 8*v[0, 1] +  (-4 - phi[-1,
>>> 1] + phi[1, 1])*v[1, 1])))/(dx**2*dy**4) +  ((-4 + phi[0, 0] - phi 
>>> [2,
>>> 0])* (dx**2*((-4 + phi[1, -1] - phi[1, 1])*v[1, -1] + 8*v[1, 0]  
>>> +  (-4
>>> - phi[1, -1] + phi[1, 1])*v[1, 1]) +   dy**2*((-4 + phi[0, 0] -  
>>> phi[2,
>>> 0])*v[0, 0] + 8*v[1, 0] +  (-4 - phi[0, 0] + phi[2, 0])*v[2, 0])))/
>>> (dx**4*dy**2)))/  (2*dx**4*(-8*dy**2*E**phi[0, 0]*epsr*ni*(2 +
>>> dy**2*Cxy[0, 0] + phi[0, -1] -   2*phi[0, 0] + phi[0, 1]) -
>>> 16*dy**4*ni**2*v[0, 0] +   E**(2*phi[0, 0])*epsr**2*((-4 + phi[0,  
>>> 0] -
>>> phi[0, 2])*v[0, 0] +   4*v[0, 1] + (-phi[0, 0] + phi[0, 2])*v[0,  
>>> 2]))
>>> +  dx**2*dy**2*E**phi[0, 0]*epsr*(-16*dy**2*ni*(2 + phi[-1, 0] -  
>>> 2*phi
>>> [0, 0] +   phi[1, 0]) + E**phi[0, 0]*epsr*((-4 + phi[-1, 1] - phi[1,
>>> 1])* v[-1, 1] + 8*v[0, 1] + (-4 + phi[1, -1] - phi[1, 1])*v[1, -1] +
>>> 8*v[1, 0] - (8 + phi[-1, 1] + phi[1, -1] - 2*phi[1, 1])*v[1, 1])) +
>>> 2*dy**4*E**(2*phi[0, 0])*epsr**2*((-4 + phi[0, 0] - phi[2, 0])*v 
>>> [0, 0]
>>> +   4*v[1, 0] + (-phi[0, 0] + phi[2, 0])*v[2, 0])) -   
>>> (dx**4*dy**4*E**
>>> (2*phi[0, 0])*epsr**2*(64*(dx**(-2) + dy**(-2))**2 +  (16*ni**2)/ 
>>> (E**
>>> (2*phi[0, 0])*epsr**2) + (4 - phi[0, 0] + phi[0, 2])**2/  dy**4 +  
>>> (4 -
>>> phi[0, 0] + phi[2, 0])**2/dx**4)* (-(((ni**2*(16/dx**4 + 16/dy**4  
>>> + (u
>>> [0, 0] - u[0, 2])**2/dy**4 +   (u[0, 0] - u[2, 0])**2/dx**4 +
>>> (16*ni*(-
>>> (E**phi[0, 0]*u[0, 0]) +  v[0, 0]/E**phi[0, 0])*(Cxy[0, 0] + (phi[0,
>>> -1] - 2*phi[0, 0] +   phi[0, 1])/dy**2 + (phi[-1, 0] - 2*phi[0, 0] +
>>> phi[1, 0])/dx**  2 + (ni*(-(E**phi[0, 0]*u[0, 0]) + v[0, 0]/E**phi 
>>> [0,
>>> 0]))/ epsr))/epsr + 16*(2/dx**2 + 2/dy**2 + (E**phi[0, 0]*ni*u[0, 0]
>>> +   (ni*v[0, 0])/E**phi[0, 0])/epsr)**2 + (v[0, 0] - v[0, 2])**2/
>>> dy**4 + (v[0, 0] - v[2, 0])**2/dx**4))/(4*epsr**2) +   ((2*dx**4*
>>> (8*dy**2*E**phi[0, 0]*epsr*ni*(2 - phi[0, -1] + 2*phi[0, 0] -  phi 
>>> [0,
>>> 1]) + 8*dy**4*E**phi[0, 0]*ni*(-(epsr*Cxy[0, 0]) + 2*  E**phi[0, 0]
>>> *ni*u[0, 0]) + epsr**2*((4 + phi[0, 0] - phi[0, 2])*  u[0, 0] -  
>>> 4*u[0,
>>> 1] + (-phi[0, 0] + phi[0, 2])*u[0, 2])) +   dx**2*dy**2*epsr*
>>> (16*dy**2*E**phi[0, 0]*ni*(2 - phi[-1, 0] + 2*  phi[0, 0] - phi 
>>> [1, 0])
>>> + epsr*((4 + phi[-1, 1] - phi[1, 1])*  u[-1, 1] - 8*u[0, 1] + (4  
>>> + phi
>>> [1, -1] - phi[1, 1])*  u[1, -1] - 8*u[1, 0] - (phi[-1, 1] + phi 
>>> [1, -1]
>>> -  2*(4 + phi[1, 1]))*u[1, 1])) + 2*dy**4*epsr**2* ((4 + phi[0, 0] -
>>> phi[2, 0])*u[0, 0] - 4*u[1, 0] +   (-phi[0, 0] + phi[2, 0])*u[2,  
>>> 0]))*
>>> (2*dx**4*(-8*dy**2*E**phi[0, 0]*epsr*ni*(2 + dy**2*Cxy[0, 0] + phi
>>> [0,   -1] - 2*phi[0, 0] + phi[0, 1]) - 16*dy**4*ni**2*v[0, 0] +    
>>> E**
>>> (2*phi[0, 0])*epsr**2*((-4 + phi[0, 0] - phi[0, 2])*v[0, 0] + 4*   
>>> v[0,
>>> 1] + (-phi[0, 0] + phi[0, 2])*v[0, 2])) +   dx**2*dy**2*E**phi[0, 0]
>>> *epsr*(-16*dy**2*ni*(2 + phi[-1, 0] - 2*  phi[0, 0] + phi[1, 0]) +
>>> E**phi[0, 0]*epsr* ((-4 + phi[-1, 1] - phi[1, 1])*v[-1, 1] + 8*v 
>>> [0, 1]
>>> +  (-4 + phi[1, -1] - phi[1, 1])*v[1, -1] + 8*v[1, 0] -  (8 + phi 
>>> [-1,
>>> 1] + phi[1, -1] - 2*phi[1, 1])*v[1, 1])) +   2*dy**4*E**(2*phi[0,  
>>> 0])
>>> *epsr**2*((-4 + phi[0, 0] - phi[2, 0])* v[0, 0] + 4*v[1, 0] + (- 
>>> phi[0,
>>> 0] + phi[2, 0])*v[2, 0])))/ (64*dx**8*dy**8*E**(2*phi[0, 0]) 
>>> *epsr**4))
>>> * ((((-8*(dx**2 + dy**2)*(dx**2*((4 + phi[0, -1] - phi[0, 1])*u 
>>> [0, -1]
>>> -   8*u[0, 0] + (4 - phi[0, -1] + phi[0, 1])*u[0, 1]) +  dy**2*((4 +
>>> phi[-1, 0] - phi[1, 0])*u[-1, 0] - 8*u[0, 0] + (4 - phi[-1, 0] + phi
>>> [1, 0])*u[1, 0])))/(dx**4*dy**4) + ((4 + phi[0, 0] - phi[0, 2])*
>>> (dx**2*
>>> ((4 + phi[0, 0] - phi[0, 2])* u[0, 0] - 8*u[0, 1] + (4 - phi[0, 0] +
>>> phi[0, 2])*u[0, 2]) +  dy**2*((4 + phi[-1, 1] - phi[1, 1])*u[-1,  
>>> 1] -
>>> 8*u[0, 1] +   (4 - phi[-1, 1] + phi[1, 1])*u[1, 1])))/(dx**2*dy**4)
>>> +   ((4 + phi[0, 0] - phi[2, 0])*(dx**2*((4 + phi[1, -1] - phi[1,  
>>> 1])*
>>> u[1, -1] - 8*u[1, 0] + (4 - phi[1, -1] + phi[1, 1])* u[1, 1]) +  
>>> dy**2*
>>> ((4 + phi[0, 0] - phi[2, 0])*u[0, 0] -   8*u[1, 0] + (4 - phi[0,  
>>> 0] +
>>> phi[2, 0])*u[2, 0])))/ (dx**4*dy**2) - (16*E**phi[0, 0]*ni*(Cxy 
>>> [0, 0]
>>> + (phi[0, -1] -   2*phi[0, 0] + phi[0, 1])/dy**2 + (phi[-1, 0] -  
>>> 2*phi
>>> [0, 0] +   phi[1, 0])/dx**2 + (ni*(-(E**phi[0, 0]*u[0, 0]) + v[0,  
>>> 0]/
>>> E**phi[0, 0]))/epsr))/epsr)* (2*dx**4*(-8*dy**2*E**phi[0, 0] 
>>> *epsr*ni*
>>> (2 + dy**2*Cxy[0, 0] + phi[0,   -1] - 2*phi[0, 0] + phi[0, 1]) -
>>> 16*dy**4*ni**2*v[0, 0] +   E**(2*phi[0, 0])*epsr**2*((-4 + phi[0,  
>>> 0] -
>>> phi[0, 2])*v[0, 0] + 4*  v[0, 1] + (-phi[0, 0] + phi[0, 2])*v[0,  
>>> 2]))
>>> +   dx**2*dy**2*E**phi[0, 0]*epsr*(-16*dy**2*ni*(2 + phi[-1, 0] - 2*
>>> phi[0, 0] + phi[1, 0]) + E**phi[0, 0]*epsr* ((-4 + phi[-1, 1] -  
>>> phi[1,
>>> 1])*v[-1, 1] + 8*v[0, 1] +  (-4 + phi[1, -1] - phi[1, 1])*v[1, -1] +
>>> 8*v[1, 0] -  (8 + phi[-1, 1] + phi[1, -1] - 2*phi[1, 1])*v[1, 1])) +
>>> 2*dy**4*E**(2*phi[0, 0])*epsr**2*((-4 + phi[0, 0] - phi[2, 0])* v[0,
>>> 0] + 4*v[1, 0] + (-phi[0, 0] + phi[2, 0])*v[2, 0])))/
>>> (64*dx**4*dy**4*E**(2*phi[0, 0])*epsr**2) -   ((2*dx**4*
>>> (8*dy**2*E**phi
>>> [0, 0]*epsr*ni*(2 - phi[0, -1] + 2*phi[0, 0] -  phi[0, 1]) +
>>> 8*dy**4*E**phi[0, 0]*ni*(-(epsr*Cxy[0, 0]) + 2*  E**phi[0, 0]*ni*u 
>>> [0,
>>> 0]) + epsr**2*((4 + phi[0, 0] - phi[0, 2])*  u[0, 0] - 4*u[0, 1]  
>>> + (-
>>> phi[0, 0] + phi[0, 2])*u[0, 2])) +   dx**2*dy**2*epsr* 
>>> (16*dy**2*E**phi
>>> [0, 0]*ni*(2 - phi[-1, 0] + 2*  phi[0, 0] - phi[1, 0]) + epsr*((4 +
>>> phi
>>> [-1, 1] - phi[1, 1])*  u[-1, 1] - 8*u[0, 1] + (4 + phi[1, -1] -  
>>> phi[1,
>>> 1])*  u[1, -1] - 8*u[1, 0] - (phi[-1, 1] + phi[1, -1] -  2*(4 +  
>>> phi[1,
>>> 1]))*u[1, 1])) + 2*dy**4*epsr**2* ((4 + phi[0, 0] - phi[2, 0])*u 
>>> [0, 0]
>>> - 4*u[1, 0] +   (-phi[0, 0] + phi[2, 0])*u[2, 0]))* ((16*ni*(Cxy 
>>> [0, 0]
>>> + (phi[0, -1] - 2*phi[0, 0] + phi[0, 1])/dy**2 +  (phi[-1, 0] -  
>>> 2*phi
>>> [0, 0] + phi[1, 0])/dx**2 +  (ni*(-(E**phi[0, 0]*u[0, 0]) + v[0, 0]/
>>> E**phi[0, 0]))/epsr))/ (E**phi[0, 0]*epsr) + (8*(dx**2 + dy**2)*
>>> (dx**2*((-4 + phi[0, -1] - phi[0, 1])*v[0, -1] + 8*v[0, 0] +   (-4 -
>>> phi[0, -1] + phi[0, 1])*v[0, 1]) +  dy**2*((-4 + phi[-1, 0] - phi[1,
>>> 0])*v[-1, 0] + 8*v[0, 0] +   (-4 - phi[-1, 0] + phi[1, 0])*v[1,  
>>> 0])))/
>>> (dx**4*dy**4) +   ((-4 + phi[0, 0] - phi[0, 2])*(dx**2*((-4 + phi[0,
>>> 0] - phi[0, 2])* v[0, 0] + 8*v[0, 1] + (-4 - phi[0, 0] + phi[0,  
>>> 2])* v
>>> [0, 2]) + dy**2*((-4 + phi[-1, 1] - phi[1, 1])*v[-1, 1] +   8*v 
>>> [0, 1]
>>> + (-4 - phi[-1, 1] + phi[1, 1])*v[1, 1])))/ (dx**2*dy**4) + ((-4  
>>> + phi
>>> [0, 0] - phi[2, 0])*  (dx**2*((-4 + phi[1, -1] - phi[1, 1])*v[1,  
>>> -1] +
>>> 8*v[1, 0] +   (-4 - phi[1, -1] + phi[1, 1])*v[1, 1]) +  dy**2*((-4 +
>>> phi[0, 0] - phi[2, 0])*v[0, 0] + 8*v[1, 0] +   (-4 - phi[0, 0] + phi
>>> [2, 0])*v[2, 0])))/(dx**4*dy**2)))/ (64*dx**4*dy**4*epsr**2))) +
>>> ((ni**2*(2*dx**4*(8*dy**2*E**phi[0, 0]*epsr*ni*(2 - phi[0, -1] +
>>> 2*phi
>>> [0, 0] - phi[0, 1]) + 8*dy**4*E**phi[0, 0]*ni*  (-(epsr*Cxy[0, 0]) +
>>> 2*E**phi[0, 0]*ni*u[0, 0]) +  epsr**2*((4 + phi[0, 0] - phi[0, 2])*u
>>> [0, 0] - 4*u[0, 1] +  (-phi[0, 0] + phi[0, 2])*u[0, 2])) +
>>> dx**2*dy**2*epsr*  (16*dy**2*E**phi[0, 0]*ni*(2 - phi[-1, 0] + 2*phi
>>> [0, 0] -  phi[1, 0]) + epsr*((4 + phi[-1, 1] - phi[1, 1])*u[-1, 1] -
>>> 8*u[0, 1] + (4 + phi[1, -1] - phi[1, 1])*u[1, -1] - 8*u[1, 0] -   
>>> (phi
>>> [-1, 1] + phi[1, -1] - 2*(4 + phi[1, 1]))*u[1, 1])) +
>>> 2*dy**4*epsr**2*
>>> ((4 + phi[0, 0] - phi[2, 0])*u[0, 0] - 4*u[1, 0] +  (-phi[0, 0] +  
>>> phi
>>> [2, 0])*u[2, 0])))/(4*dx**4*dy**4*epsr**4) +  ((64*(dx**(-2) + dy**
>>> (-2))**2 + (16*E**(2*phi[0, 0])*ni**2)/epsr**2 +  (4 + phi[0, 0]  
>>> - phi
>>> [0, 2])**2/dy**4 + (4 + phi[0, 0] - phi[2, 0])**2/  dx**4)*(2*dx**4*
>>> (-8*dy**2*E**phi[0, 0]*epsr*ni*(2 + dy**2*Cxy[0, 0] +  phi[0, -1] -
>>> 2*phi[0, 0] + phi[0, 1]) - 16*dy**4*ni**2*v[0, 0] +  E**(2*phi[0,  
>>> 0])
>>> *epsr**2*((-4 + phi[0, 0] - phi[0, 2])*v[0, 0] +  4*v[0, 1] + (- 
>>> phi[0,
>>> 0] + phi[0, 2])*v[0, 2])) +  dx**2*dy**2*E**phi[0, 0]*epsr*
>>> (-16*dy**2*ni*(2 + phi[-1, 0] -  2*phi[0, 0] + phi[1, 0]) + E**phi 
>>> [0,
>>> 0]*epsr*  ((-4 + phi[-1, 1] - phi[1, 1])*v[-1, 1] + 8*v[0, 1] +   
>>> (-4 +
>>> phi[1, -1] - phi[1, 1])*v[1, -1] + 8*v[1, 0] -  (8 + phi[-1, 1] +  
>>> phi
>>> [1, -1] - 2*phi[1, 1])*v[1, 1])) +  2*dy**4*E**(2*phi[0, 0]) 
>>> *epsr**2*
>>> ((-4 + phi[0, 0] - phi[2, 0])*  v[0, 0] + 4*v[1, 0] + (-phi[0, 0] +
>>> phi
>>> [2, 0])*v[2, 0])))/  (64*dx**4*dy**4*E**(2*phi[0, 0])*epsr**2))*  (-
>>> ((16/dx**4 + 16/dy**4 + (u[0, 0] - u[0, 2])**2/dy**4 +   (u[0, 0]  
>>> - u
>>> [2, 0])**2/dx**4 + (16*ni*(-(E**phi[0, 0]*u[0, 0]) +  v[0, 0]/E**phi
>>> [0, 0])*(Cxy[0, 0] + (phi[0, -1] - 2*phi[0, 0] +   phi[0, 1])/ 
>>> dy**2 +
>>> (phi[-1, 0] - 2*phi[0, 0] + phi[1, 0])/dx**  2 + (ni*(-(E**phi[0,  
>>> 0]*u
>>> [0, 0]) + v[0, 0]/E**phi[0, 0]))/ epsr))/epsr + 16*(2/dx**2 + 2/ 
>>> dy**2
>>> + (E**phi[0, 0]*ni*u[0, 0]
>>
>> ...
>>
>> plus de détails »
> >


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to