Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

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

Search the Archive

Re: Partial derivative function definitions

  • To: mathgroup at smc.vnet.net
  • Subject: [mg127563] Re: Partial derivative function definitions
  • From: Bob Hanlon <hanlonr357 at gmail.com>
  • Date: Sat, 4 Aug 2012 06:02:06 -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
  • References: <jvdf8c$c4p$1@smc.vnet.net>

XFunction[x_, y_] = Sin[x] Sin[y];
YFunction[x_, y_] = Cos[x] Cos[y];
dXFunctiondx[x_, y_] = D[XFunction[x, y], x];
dXFunctiondy[x_, y_] = D[XFunction[x, y], y];
dYFunctiondx[x_, y_] = D[YFunction[x, y], x];
dYFunctiondy[x_, y_] = D[YFunction[x, y], y];

The fuzziness is caused by the smoothness of the functions. You might
want to use a Mesh or just use ContourPlot rather than DensityPlot.
ContourPlot also provides tooltips.

Partition[DensityPlot[#[x, y],
     {x, -2 Pi, 2 Pi}, {y, -2 Pi, 2 Pi},
     Mesh -> 9,
     MeshFunctions -> (#3 &)] & /@
   {XFunction, YFunction,
    dXFunctiondx, dYFunctiondx,
    dXFunctiondy, dYFunctiondy}, 2] // Grid

Partition[ContourPlot[#[x, y],
     {x, -2 Pi, 2 Pi}, {y, -2 Pi, 2 Pi}] & /@
   {XFunction, YFunction,
    dXFunctiondx, dYFunctiondx,
    dXFunctiondy, dYFunctiondy}, 2] // Grid


Bob Hanlon


On Fri, Aug 3, 2012 at 4:15 AM, Mat' G. <ellocomateo at free.fr> wrote:
> 2012-08-02 10:54, Mat' G. scripsit:
>> Hello,
>> Can someone please explain me why the following partial derivative
>> function definitions do not work? I get errors like:
>> General::ivar: -6.28229 is not a valid variable. >>
>> General::ivar: -5.38469 is not a valid variable. >>
>> General::ivar: -4.48709 is not a valid variable. >>
>> General::stop: Further output of General::ivar will be suppressed during
>> this calculation. >>
>>
>> Thanks for helping!
>> Mat
>>
>>
>>
>>
>> XFunction[x_, y_] := Sin[x] Sin[y];
>> YFunction[x_, y_] := Cos[x] Cos[y];
>> dXFunctiondx[x_, y_] := D[XFunction[x, y], x];
>> dXFunctiondy[x_, y_] := D[XFunction[x, y], y];
>> dYFunctiondx[x_, y_] := D[YFunction[x, y], x];
>> dYFunctiondy[x_, y_] := D[YFunction[x, y], y];
>>
>> Grid[{
>>     {
>>      DensityPlot[
>>       XFunction[x, y], {x, -2 \[Pi], 2 \[Pi]}, {y, -2 \[Pi], 2 \[Pi]}]
>>      , DensityPlot[
>>       YFunction[x, y], {x, -2 \[Pi], 2 \[Pi]}, {y, -2 \[Pi], 2 \[Pi]}]
>>      }
>>     , {
>>      DensityPlot[
>>       dXFunctiondx[x, y], {x, -2 \[Pi], 2 \[Pi]}, {y, -2 \[Pi], 2 \[Pi]}]
>>      , DensityPlot[
>>       dYFunctiondx[x, y], {x, -2 \[Pi], 2 \[Pi]}, {y, -2 \[Pi], 2 \[Pi]}]
>>      }
>>     , {
>>      DensityPlot[
>>       dXFunctiondy[x, y], {x, -2 \[Pi], 2 \[Pi]}, {y, -2 \[Pi], 2 \[Pi]}]
>>      , DensityPlot[
>>       dYFunctiondy[x, y], {x, -2 \[Pi], 2 \[Pi]}, {y, -2 \[Pi], 2 \[Pi]}]
>>      }
>>     }]
>>
> Thank you David Park for providing the answer: replacing the SetDelayed
> for the derivative function by Set! It does work now.
>
> I can plot the derivative, but I get a very poor resolution, that I
> cannot improve with MaxRecursion. Can anyone help me understand why
> please? How can I improve the derivative graphs resolution? My current
> file is to be found on:
>
>         http://www.sendspace.com/file/haksg8
>
> Thanks for helping!
>



  • Prev by Date: Re: Using Workbench to debug Compile[] ??
  • Next by Date: Re: Strange runtime error in Compiled function
  • Previous by thread: Re: Partial derivative function definitions
  • Next by thread: Graph background & Manipulate