Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

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

Search the Archive

Manipulate a Plot of Evaluate DSolve

  • To: mathgroup at smc.vnet.net
  • Subject: [mg127492] Manipulate a Plot of Evaluate DSolve
  • From: barandiaran.juan at gmail.com
  • Date: Sun, 29 Jul 2012 03:05:21 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-newout@smc.vnet.net
  • Delivered-to: mathgroup-newsend@smc.vnet.net

Hi,

I'm trying to Manipulate a Plot of a quite difficult function which involves solving a differential equation, but cannot be solved analytically.

To try to simplify the example and simulate it, let's assume that we have the following function:

func[coef_] = {{y -> Function[{x}, DSolve[y'[x] == Cos[coef *x], y, x]]}} 

Manipulate[Plot[{{Evaluate[y[x] /. func[coef] /. C[1] -> {Range[-5, 0]}]}}, {x, -10, 10}], {{coef , 1}, 0.1, 5}] 

I get an error: DSolve::dsvar: "-9.99959 cannot be used as a variable" 

I think that this is because Manipulate assigns a value to x (= -9.99959) BEFORE solving the DSolve, even though to avoid it I'm using the Evaluate function, which should process the function before assigning a value to x.

But the thing is that the "coef" to be Manipulated is at the same "level" as the x in the Manipulate block, so probably if I need the coef to solve the DSolve, I also have the x that gives me an error.
 
Is there any workaround? I guess I'm not understanding properly how Mathematica processes these simple expressions.

Thanks, Juan 



  • Prev by Date: Re: Excel Headers --> Mathematica
  • Next by Date: Re: How FFT workks? (analytical example)
  • Previous by thread: Re: Bug in "Find Previous"
  • Next by thread: Re: Manipulate a Plot of Evaluate DSolve