Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Ok, the error was

'sage.rings.integer.Integer' object is not callable

when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but then I redefined the operators such that themselves include the -- (x1=x2,y1=y2) -- expressions instead of the operator caller! So that now the error became as

ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help (example of legal syntax is 'assume(t>0)', see `assume?` for more details)
Is  t  positive, negative, or zero?

This is while I still use the dummy variables td, xd1, and xd2, and of course the assume(t>0) statement! Any idea what to do now?

My minimal code now is this:

reset()
forget()
var('x,y,t, x1,y1, x2,y2')
var('x_B1,x_B2, y_B1,y_B2, T')

x_B1=-1; x_B2=1; y_B1=-1; y_B2=1; T=10
assume(x_B1<=x, 0<t)

var('q')                # q is a dummy variable to fill the zeroth place in some lists

R0=[q,x,y,t]
R1=[x1,y1]
R2=[x2,y2]

phi=[q]
for i in range(1,4):
    phi.append([])

    for n in range(3):
        phi[i].append(function('phi_%s_%s' %(i,n), x,y,t,*R1+R2))



# initial estimation

for i in range(1,4):
    phi[i][0]=1



# operators
var('td,xd1,xd2')
g = lambda i,f: diff(f,R0[i])
It = lambda f: integral(f(t=td),td,0,t)
Ixx = lambda f: integral(integral(f(x=xd1),xd1,x_B1,xd2),xd2,x_B1,x)
IntR2 = lambda f:  integral(integral(f(x1=x2,y1=y2),x2,x_B1,x_B2),y2,y_B1,y_B2)



# equations being imported

for n in range(2):
    eq=[]
    for i in range(1,3):
        # FIRST. a minimal full-featured typical equation.
        # RESULT: the error was ('sage.rings.integer.Integer' object is not callable) when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but now that the operators are redefined to themselves include the -- (x1=x2,y1=y2) -- expressions the error became as (ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help … Is  t  positive, negative, or zero?)
        eq.append(phi[i][n+1]== It(g(i,phi[i][n])) \
                                + It(  sum( phi[j][n]*g(j,phi[i][n]) \
                                + IntR2(phi[j][n]*g(j,phi[i][n])) for j in range(1,4) ) ))

    show(eq)

Many thanks for your time and efforts

Ok, the error was

'sage.rings.integer.Integer' object is not callable

when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but then I redefined the operators such that themselves include the -- (x1=x2,y1=y2) -- expressions instead of the operator caller! So that now the error became as

ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help (example of legal syntax is 'assume(t>0)', see `assume?` for more details)
Is  t  positive, negative, or zero?

This is while I still use the dummy variables td, xd1, and xd2, and of course the assume(t>0) statement! Any idea what to do now?

My minimal code now is this:

reset()
forget()
var('x,y,t, x1,y1, x2,y2')
var('x_B1,x_B2, y_B1,y_B2, T')

x_B1=-1; x_B2=1; y_B1=-1; y_B2=1; T=10
assume(x_B1<=x, 0<t)

var('q')                # q is a dummy variable to fill the zeroth place in some lists

R0=[q,x,y,t]
R1=[x1,y1]
R2=[x2,y2]

phi=[q]
for i in range(1,4):
    phi.append([])

    for n in range(3):
        phi[i].append(function('phi_%s_%s' %(i,n), x,y,t,*R1+R2))



# initial estimation

for i in range(1,4):
    phi[i][0]=1



# operators
var('td,xd1,xd2')
g = lambda i,f: diff(f,R0[i])
It = lambda f: integral(f(t=td),td,0,t)
Ixx = lambda f: integral(integral(f(x=xd1),xd1,x_B1,xd2),xd2,x_B1,x)
IntR2 = lambda f:  integral(integral(f(x1=x2,y1=y2),x2,x_B1,x_B2),y2,y_B1,y_B2)



# equations being imported

for n in range(2):
    eq=[]
    for i in range(1,3):
        # FIRST. a minimal full-featured typical equation.
        # RESULT: the error was ('sage.rings.integer.Integer' object is not callable) when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but now that the operators are redefined to themselves include the -- (x1=x2,y1=y2) -- expressions the error became as (ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help … Is  t  positive, negative, or zero?)
        eq.append(phi[i][n+1]== It(g(i,phi[i][n])) \
                                + It(  sum( phi[j][n]*g(j,phi[i][n]) \
                                + IntR2(phi[j][n]*g(j,phi[i][n])) for j in range(1,4) ) ))

    show(eq)

Many thanks for your time and effortsWhat shall I do now?

Ok, the error was

'sage.rings.integer.Integer' object is not callable

when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but then I redefined the operators such that themselves include the -- (x1=x2,y1=y2) -- expressions instead of the operator caller! So that now the error became as

ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help (example of legal syntax is 'assume(t>0)', see `assume?` for more details)
Is  t  positive, negative, or zero?

This is while I still use the dummy variables td, xd1, and xd2, and of course the assume(t>0) statement! Any idea what to do now?

My minimal code now is this:

reset()
forget()
var('x,y,t, x1,y1, x2,y2')
var('x_B1,x_B2, y_B1,y_B2, T')

x_B1=-1; x_B2=1; y_B1=-1; y_B2=1; T=10
assume(x_B1<=x, 0<t)

var('q')                # q is a dummy variable to fill the zeroth place in some lists

R0=[q,x,y,t]
R1=[x1,y1]
R2=[x2,y2]

phi=[q]
for i in range(1,4):
    phi.append([])

    for n in range(3):
        phi[i].append(function('phi_%s_%s' %(i,n), x,y,t,*R1+R2))



# initial estimation

for i in range(1,4):
    phi[i][0]=1



# operators
var('td,xd1,xd2')
g = lambda i,f: diff(f,R0[i])
It = lambda f: integral(f(t=td),td,0,t)
Ixx = lambda f: integral(integral(f(x=xd1),xd1,x_B1,xd2),xd2,x_B1,x)
IntR2 = lambda f:  integral(integral(f(x1=x2,y1=y2),x2,x_B1,x_B2),y2,y_B1,y_B2)



# equations being imported

for n in range(2):
    eq=[]
    for i in range(1,3):
        # FIRST. a minimal full-featured typical equation.
        # RESULT: the error was ('sage.rings.integer.Integer' object is not callable) when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but now that the operators are redefined to themselves include the -- (x1=x2,y1=y2) -- expressions the error became as (ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help … Is  t  positive, negative, or zero?)
        eq.append(phi[i][n+1]== It(g(i,phi[i][n])) \
                                + It(  sum( phi[j][n]*g(j,phi[i][n]) \
                                + IntR2(phi[j][n]*g(j,phi[i][n])) for j in range(1,4) ) ))

    show(eq)

What shall I do now?

EDIT.

I have just confused. Right now I tested the following code and it surprisingly worked!

reset()
forget()

var('x,y,z,t, x1,y1,z1,t1, x2,y2,z2,t2, x3,y3,z3,t3') 
R0=[x,y,z,t]
R1=[x1,y1,z1,t1]

U_0=[]
U_1=[]


for i in range(4):
    U_0.append(function('U%s0' %i, *R0))
    U_1.append(function('U%s1' %i, *R0+R1))


var('td,xd1,xd2,x_B1')
It = lambda f: integral(f(t=td),td,0,t)
Ixx = lambda f: integral(integral(f(x=xd1),xd1,x_B1,xd2),xd2,x_B1,x)


eq=[]
for i in range(4):
    eq.append(It(U_1[i])==It(U_0[i](x=x1,y=y1))+Ixx(U_0[i])); show(eq[i])

So that I was wrong when I was thinking the error ('sage.rings.integer.Integer' object is not callable) is due to the variable change being called from the argument of the operators instead of being pre-defined inside the operators themselves (which of course was not desired as operator was desired not to be too specific about the variables of the functions to which they apply). Thus, I am totally confused with the errors that I receive from my codes. Please Help

Ok, the error was

'sage.rings.integer.Integer' object is not callable

when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but then I redefined the operators such that themselves include the -- (x1=x2,y1=y2) -- expressions instead of the operator caller! So that now the error became as

ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help (example of legal syntax is 'assume(t>0)', see `assume?` for more details)
Is  t  positive, negative, or zero?

This is while I still use the dummy variables td, xd1, and xd2, and of course the assume(t>0) statement! Any idea what to do now?

My minimal code now is this:

reset()
forget()
var('x,y,t, x1,y1, x2,y2')
var('x_B1,x_B2, y_B1,y_B2, T')

x_B1=-1; x_B2=1; y_B1=-1; y_B2=1; T=10
assume(x_B1<=x, 0<t)

var('q')                # q is a dummy variable to fill the zeroth place in some lists

R0=[q,x,y,t]
R1=[x1,y1]
R2=[x2,y2]

phi=[q]
for i in range(1,4):
    phi.append([])

    for n in range(3):
        phi[i].append(function('phi_%s_%s' %(i,n), x,y,t,*R1+R2))



# initial estimation

for i in range(1,4):
    phi[i][0]=1



# operators
var('td,xd1,xd2')
g = lambda i,f: diff(f,R0[i])
It = lambda f: integral(f(t=td),td,0,t)
Ixx = lambda f: integral(integral(f(x=xd1),xd1,x_B1,xd2),xd2,x_B1,x)
IntR2 = lambda f:  integral(integral(f(x1=x2,y1=y2),x2,x_B1,x_B2),y2,y_B1,y_B2)



# equations being imported

for n in range(2):
    eq=[]
    for i in range(1,3):
        # FIRST. a minimal full-featured typical equation.
        # RESULT: the error was ('sage.rings.integer.Integer' object is not callable) when I was calling the operators using expressions like -- IntR2(phi[j][n](x1=x2,y1=y2)*g(j,phi[i][n])) -- but now that the operators are redefined to themselves include the -- (x1=x2,y1=y2) -- expressions the error became as (ValueError: Computation failed since Maxima requested additional constraints; using the 'assume' command before integral evaluation *may* help … Is  t  positive, negative, or zero?)
        eq.append(phi[i][n+1]== It(g(i,phi[i][n])) \
                                + It(  sum( phi[j][n]*g(j,phi[i][n]) \
                                + IntR2(phi[j][n]*g(j,phi[i][n])) for j in range(1,4) ) ))

    show(eq)

What shall I do now?

EDIT.

I have just confused. Right now I tested the following code and it surprisingly worked!

reset()
forget()

var('x,y,z,t, x1,y1,z1,t1, x2,y2,z2,t2, x3,y3,z3,t3') 
R0=[x,y,z,t]
R1=[x1,y1,z1,t1]

U_0=[]
U_1=[]


for i in range(4):
    U_0.append(function('U%s0' %i, *R0))
    U_1.append(function('U%s1' %i, *R0+R1))


var('td,xd1,xd2,x_B1')
It = lambda f: integral(f(t=td),td,0,t)
Ixx = lambda f: integral(integral(f(x=xd1),xd1,x_B1,xd2),xd2,x_B1,x)


eq=[]
assume(t>0)
for i in range(4):
    eq.append(It(U_1[i])==It(U_0[i](x=x1,y=y1))+Ixx(U_0[i])); eq.append(It(U_1[i])==It(U_0[i](x=R0[i],y=x+z))\
                             +Ixx(U_0[i]))
    show(eq[i])

So that I was wrong when I was thinking the error ('sage.rings.integer.Integer' object is not callable) is due to the variable change being called from the argument of the operators instead of being pre-defined inside the operators themselves (which of course was not desired as operator was desired not to be too specific about the variables of the functions to which they apply). Thus, I am totally confused with the errors that I receive from my codes. Please Help

EDIT2.

When I multiply "U_0i" in the argument to It operator by a simple function "U_0[i]" it asks: (Is t positive, negative, or zero?) although assume(t>0) is used! Note that again I am calling the operators with the variable changes from the operator call but still no ('sage.rings.integer.Integer' object is not callable)! What are these errors trying to say? Where is the origin to such errors? How can I get rid of them?