Hello, I am a python beginner, and I have a question about scalars vs
arrays.

I am making a (very simple) code, and part of it is:

from numarray import *
from math import *

def source(x,y):
  f=sin(x)
  return f

a=4.

m=10

dx=a/(m+1.)

x=zeros([m,1], Float)

print x[0]

print func(x[0])

When I run this code, I get:

[ 0.]
0.0

However, if I change the line f=sin(x) to f=2*x, I will get:

[ 0.]
[ 0.]

Why does func(x[0]) return a scalar for sin(x), but returns an array for
2*x?

If I want a scalar returned for f=2*x, I need to put in func(x[0,0]).
Why do x[0] and x[0,0] both work for sin(x), but only x[0,0] will work
for 2*x?
_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to