Notation of partial derivative

Verbeia is right. An alternative notation is to use escpdesc which gives a partial derivative; thus, typing escpdesc ctrl-t followed by f[x,t] will give the derivative of f with respect to its second argument.

For instance, this is a valid way to specify a differential equation:

enter image description here

This is closer to what you're after than D[f[x,t],t], for instance.


For a start, f[x,y]^(0,1) isn't the same as f^(0,1)[x,y].

But the real reason is that these expressions are very different in meaning, as revealed by their FullForm:

D[f[x, y], y] // FullForm
Derivative[0,1][f][x,y]

versus (and I had to use a simple symbolic expression as the exponent to show what was going on:

f[x,y]^z//FullForm
Power[f[x,y],z]

Similarly, Derivative doesn't correspond to Superscript. They are syntactically different despite the visual similarities.

Stick with D[f[x,y],y] and so on. If you need the vector derivative, you can use the syntax:

 D[f,{{x1,x2,x3...}}]

as described in the documentation.


What internally makes the superscript behave as a Derivative seems to be implemented with TagBox, this is what the output looks like:

SuperscriptBox["f", 
TagBox[
  RowBox[{"(", 
     RowBox[{"0", ",", "1"}], ")"}],
  Derivative],
MultilineFunction -> None]

If you show this with DisplayForm you will get something that looks like a superscript but evaluates as a Derivative. There are some similar examples mentioned in the documentation of TagBox. There seems to be no way to give this as input (except for inserting the TagBox by hand in the raw cell expression, of course...).

Edit: Of course one should never say it can't be done. I just stumbled over InputAliases in a post to mathgroup, a feature I usually don't use and thus always forget. Of course that would let you define a custom shortcut to insert exactly that box-expression, e.g. by evaluating the following:

CurrentValue[EvaluationNotebook[], InputAliases] = 
 Append[CurrentValue[EvaluationNotebook[], InputAliases], 
  "drv" -> SuperscriptBox["\[Placeholder]", 
    TagBox[RowBox[{"(", RowBox[{"\[Placeholder]"}], ")"}], 
     Derivative], MultilineFunction -> None]
  ]

then use EscdrvEsc to insert a corresponding template which you can fill by jumping from placeholder to placeholder using Tab. You could of course alternatively add such rules to your preferred stylesheet.