Clare So

170 Reputation

8 Badges

17 years, 260 days
Waterloo, Ontario, Canada

I was a software developer in Math and Research groups in 2007-2012.  I reviewed most of the contributions from Maplesoft's academic research labs.  In addition, I was one of the maintainers of the math library in Maple.  My involvement in Maple started in my undergraduate career when I worked at one of Maplesoft's affiliated academic research labs.

I hold BSc and MSc degrees in Computer Science from The University of Western Ontario, London, Canada.

My public LinkedIn profile: http://ca.linkedin.com/in/claremso

MaplePrimes Activity


These are replies submitted by Clare So

@longrob You're right. SecondDerivativeTest requires the points to be known.  My bad.

@longrob You're right. SecondDerivativeTest requires the points to be known.  My bad.

Student[MultivariateCalculus][FunctionAverage] works for functions of two variables (as shown in @Kamal's worksheet):

> with(Student:-MultivariateCalculus):
> FunctionAverage(x^2+y^2, y = 2 .. 4, x = 2 .. 4);
                                  56/3

Student[MultivariateCalculus][SecondDerivativeTest] is be the closest command in the Student subpackages for determining min/max of a two-variable function...

Student[MultivariateCalculus][FunctionAverage] works for functions of two variables (as shown in @Kamal's worksheet):

> with(Student:-MultivariateCalculus):
> FunctionAverage(x^2+y^2, y = 2 .. 4, x = 2 .. 4);
                                  56/3

Student[MultivariateCalculus][SecondDerivativeTest] is be the closest command in the Student subpackages for determining min/max of a two-variable function...

The report has been forwarded to the appropriate development team.  Please don't hesitate to contact me if you have any questions.

Clare

@jamunoz plottools[getdata] is new for Maple 15.  It is now the preferred way to access information in a plot.

Can you post your specific example? op([1,1], ...) works in the following case:

> p:= dsolve({D(y)(x) = y(x), y(0)=1}, numeric, output=Array([-1,-0.8,-0.6,-0.4,-0.2,0])):
> myplot1 := plots[odeplot](p):
> op([1,1], myplot1);
                         [         -1.             0.367879356307219241]
                         [                                             ]
                         [-0.800000000000000044    0.449328888167686402]
                         [                                             ]
                         [-0.599999999999999978    0.548811566928079975]
                         [                                             ]
                         [-0.400000000000000022    0.670319983694311339]
                         [                                             ]
                         [-0.200000000000000011    0.818730696481771880]
                         [                                             ]
                         [         0.                       1.         ]

@jamunoz plottools[getdata] is new for Maple 15.  It is now the preferred way to access information in a plot.

Can you post your specific example? op([1,1], ...) works in the following case:

> p:= dsolve({D(y)(x) = y(x), y(0)=1}, numeric, output=Array([-1,-0.8,-0.6,-0.4,-0.2,0])):
> myplot1 := plots[odeplot](p):
> op([1,1], myplot1);
                         [         -1.             0.367879356307219241]
                         [                                             ]
                         [-0.800000000000000044    0.449328888167686402]
                         [                                             ]
                         [-0.599999999999999978    0.548811566928079975]
                         [                                             ]
                         [-0.400000000000000022    0.670319983694311339]
                         [                                             ]
                         [-0.200000000000000011    0.818730696481771880]
                         [                                             ]
                         [         0.                       1.         ]

I've trackered this bug report in our database.  Thanks @Scimann for asking and @pagan for providing a workaround.

@JacquesC Thanks for providing some historical information about the video!

Note that people who actually worked on Maple at that time were shown in the video.  I've recognized a number of people who were in the video are still working at Maplesoft or University of Waterloo.

@JacquesC For people who are new to uneval, there's a catch for the use of uneval parameter modifier in my example: uneval can't prevent auto simplification of some "easy" computations.

> mydismantle(1+1);

INTPOS(2): 2

> mydismantle('1+1');

UNEVAL(2)
   INTPOS(2): 2

> dismantle(1+1);

INTPOS(2): 2

I'm certainly not among the 10 people.  Below is how I examine the "internal" structure of int(x,x) before int(x,x) gets evaluated:

> mydismantle := proc(expr::uneval) dismantle(expr); end proc:
> dismantle(int(x,x));

SUM(3)
   PROD(3)
      NAME(4): x
      INTPOS(2): 2
   RATIONAL(3): 1/2
      INTPOS(2): 1
      INTPOS(2): 2

> mydismantle(int(x,x));

FUNCTION(3)
   NAME(4): int #[protected, _syslib]
   EXPSEQ(3)
      NAME(4): x
      NAME(4): x

>

@Robert Israel : Great!  Now the Pacman is moving instead of me shoveling dots to his mouth.

Just a minor detail - The Pacman is moving quite slowly.  This detail can be fixed easily by increasing "FPS" (Frames Per Second) presented animation menu.

@Will Great!  Thanks.

@Robert Israel: I wish I can put a "thumbs up" to your comment! The flythrough is so neat.

An example of efficient list creation is found in http://www.mapleprimes.com/blog/jpmay/antipatternweek.

Hope this helps.

1 2 3 4 5 Page 2 of 5