MathGroup Archive 2008

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: mathematica newbie ?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg92423] Re: mathematica newbie ?
  • From: "David Park" <djmpark at comcast.net>
  • Date: Tue, 30 Sep 2008 21:50:10 -0400 (EDT)
  • References: <gbt2pe$lcc$1@smc.vnet.net>

Jared,

Table is the command to construct lists and arrays. A vector is just a list.

Switch or Which are the commands for returning different things with 
different values.

It is almost always better to localize variables such as nsupports, ndof and 
nels within a structure or definition. You can use With or Module to do 
that. Or you can make them arguments in a routine that generates your 
vector.

You don't have to distinguish between a row vector and a column vector. If 
you write an expression such as vector.matrix or matrix.vector Mathematica 
handles it properly where vector is just a list. You can use Column to 
display a vector in column form.

With[
 {nsupports = 3, ndof = 10, nels = 2},
 Table[
  Switch[x,
   0, 0,
   nsupports - 1, ndof - 2,
   _, 2 nels x], {x, 0, nsupports - 1}]]
{0, 4, 8}

With[
 {nsupports = 3, ndof = 10, nels = 2},
 Table[
  Which[
   x == 0, 0,
   x == nsupports - 1, ndof - 2,
   True, 2 nels x], {x, 0, nsupports - 1}]]
{0, 4, 8}

myvector[nsupports_, ndof_, nels_] :=
 Table[
  Switch[x,
   0, 0,
   nsupports - 1, ndof - 2,
   _, 2 nels x], {x, 0, nsupports - 1}]

myvector[3, 10, 2]
{0, 4, 8}


-- 
David Park
djmpark at comcast.net
http://home.comcast.net/~djmpark/


<Jared.webb at yahoo.com> wrote in message news:gbt2pe$lcc$1 at smc.vnet.net...
>I am extremely new to mathematica and am having trouble following the
> documentation.
>
> I would like to set up the following loop and have it send the output
> to a vector.
>
> If I have in mathematica:
>
> nsupports=3
> ndof=10
> nels=2
> int=range[0,nsupports-1]        - this is my iterator
>
> I want to set up a loop:
>
> for x in int:
> if x=0, return 0
> if x=nsupports-1, return ndof-2
> otherwise, return x*nels*2
>
> I want the output to go to a column vector.
>
> Thanks
> Jared
> 



  • Prev by Date: Re: Plotting f = Function[x,expr] and f[x_] := expr
  • Next by Date: Re: Plotting f = Function[x,expr] and f[x_] := expr
  • Previous by thread: Re: mathematica newbie ?
  • Next by thread: ContourStyle -> {{Dashing[0.15, 0.5]}} has no effect