20,936 reputation
244101
bio website sites.google.com/a/unca.edu/…
location Asheville, NC
age
visits member for 2 years, 8 months
seen 20 hours ago

I've been a professor of mathematics at The University of North Carolina - Asheville since 1997. I've been using Mathematica since I started graduate school in mathematics at Ohio State in 1989. At that time, we used version 1.1 (as I recall) to teach calculus in our Calculus and Mathematica classes. I've used it pretty much continuously in my teaching and research since then.

In addition to my posts on SE, you can find some of my papers, teaching notebooks and other Mathematica based oddities strewn throughout my website.

In recent years, I've also worked as a part-time consultant to Wolfram Research focusing on development of mathematical content for WolframAlpha.


Aug
11
comment Automatically detect largest interval over which NDSolve can find a solution
@MichaelE2 You are probably right - I was clearly being paranoid. :)
Aug
11
comment Fill gap created by Exclusions
I feel strangely compelled to upvote this!
Aug
10
comment Fill gap created by Exclusions
You're plotting two different functions and each has a reasonable choice of Exclusions independent of the other. Why don't you use to Plot command and combine the results with Show? You might also try the TrackedSymbols -> {t0,s} in your Manipulate command. Finally, with 9 questions now asked, I think it would be reasonable for you to properly format your code - it's just a matter of indenting your code block four spaces.
Aug
10
comment Plotting a parametric function with three input variables
@hieron The With statement is certainly not necessary but makes it super simple to extract individual plots. You can use With[{c=Pi/2},___], for example to look at that particular image. It arose because I did exactly that when trying to figure out what was going on mathematically. Clearly, this would be particularly nice, if there were more cs in the expression.
Aug
9
comment Can $\it{every}$ usage of While be changed into NestWhile?
In my experience, While is very easy to compile, but NestWhile is not.
Aug
7
comment How can I plot the complex graph of $x^x$ in Mathematica?
@Mr.Wizard Thanks!
Aug
6
comment Specifying Range of RSolve
@QuinnCulver Well, it oughtta get the whole damn thing correct, no? If you're going to use a black box, you'd better check your results and, in this case, they don't check out.
Aug
6
comment Specifying Range of RSolve
@QuinnCulver I tried FindSequenceFunction without success but I really see no reason to think that such an expression exists. I can tell you that the sequence converges monotonically down to $3/4$ with approximate multiplier $1/2$ but not much more.
Aug
6
comment Specifying Range of RSolve
@QuinnCulver Not definitively, but it hardly seems shocking, given the branch cuts that are bound to arise with a quadratic recurrence.
Aug
6
comment Using Solve but getting no output
You should be aware that there are many apparently simple equations with solutions that are not expressible in closed form. One such example is Solve[Cos[x]==x,x]. On the other hand, Solve[Cos[x]==x,x,Reals] produces a useful result. Thus, it's nice to now if your variables and parameters satisfy any useful assumptions. Lacking a symbolic expression, perhaps you'd be happy with a function that produces an estimate for s as a function of the input parameters?
Aug
6
comment How to generate specific function using BSpline command/
@chris I think it might be reasonable to implement PiecewiseExpand for InterpolatingFunctions but I don't see any reason to expect it. Interpolation is much older (V2) and lives in the numerical domain. PiecewiseExpand (V5) is primarily algebraic and is simply meant to simplify nested Piecewise expressions. How might PiecewiseExpand work with an InterpolatingFunction generated by NDSolve and containing zillions of sub-intervals?
Aug
5
comment How to draw a box with holes using Mathematica
@peter Honestly, I just looked at it. I figured the $z$ coordinate had to start way up high, go pretty low, then pretty high, then way down low - so I came up with $t-t^3$ over some interval. I then scaled and shifted that so that it fit. I did similar things with the $x$ and $y$ coordinates. Too much looking at functions over the years, I guess.
Aug
1
comment How to draw a box with holes using Mathematica
Are these really homotopic? Homeomorphic, I can see - but homotopic requires a deformation that disentangles those tubes. Given an explicit homotopy, we should be able to animate the deformation.
Aug
1
comment How to draw a box with holes using Mathematica
@peter You can learn a lot about this type of programming in the documentation's section on the structure of graphics. In particular, you'll learn that plotting command (like ParametricPlot3D) produce graphics primitives (like Line). So, if you execute something like InputForm[ParametricPlot3D[{t,t,t}, {t,0,1}], you'll see that a Line has been produced. The /.Line[pts_] :> business simply replaces it with a Tube.
Aug
1
comment Numerically solving Helmholtz equation in 2D for arbitrary shapes
@Mr.Wizard Not if I delete my answer! I am rather embarrassed to have the accept. :)
Jul
31
comment Numerically solving Helmholtz equation in 2D for arbitrary shapes
Why k=1/10? In fact, it seems that you can suppress the k entirely as t is playing the role of the parameter.
Jul
31
comment Numerically solving Helmholtz equation in 2D for arbitrary shapes
If you set numEigenToCompute=6 and then plot -efIF[[6]], you essentially get the MATLink Logo, though that was computed using a finite difference technique applied to a regular triangular grid.
Jul
31
comment Numerically solving Helmholtz equation in 2D for arbitrary shapes
I'm ridiculously excited!
Jul
24
comment Conversion of 3D plot to 2D Contour Plot
@user85503 thing[[position]] represents part extraction. If you execute Short[InputForm[pic], 4], you'll see that, internally, pic has the form Graphics3D[GraphicsComplex[pts_,_],_]. Now, pic[[1]] grabs the GraphicsComplex (since it's the first argument of Graphics3D) and pic[[1,1]] grabs the first argument of the first argument, namely the points - which is exactly what we need.
Jul
24
comment How to solve an operator form of an integral equation by iteration method?
Artes is correct that it's nice to see code in the question. Not only does it show some effort on the part of the OP, but it also lends context to the question letting the person answering the question know the appropriate level to write their own code. As I did encourage Javad to ask a follow up to this question, I'll provide an answer soon.