3
$\begingroup$

This might seem as a silly question, but is it feasible to use a mathematical expression as the name of a function?

For example, I'm studying the cross section of Compton scattering and there is a formula for the differential cross section, which is denoted as $\frac{d\sigma}{d\Omega}$. I'd like to express the latter as a function of energy E, angle θ and atomic number Z.

If I, naively, use $\frac{d\sigma}{d\Omega}[Z\_, E\_, \theta\_] := \ldots$ I get the anticipated error:

SetDelayed::write : Tag Times in dσ/dΩ[Z_,E_,θ_] is Protected

Instead of the obvious workaround of using a name such as diffSection[Z_,E_,θ_] := ... is there any other way ?

$\endgroup$
1
  • $\begingroup$ A big barred underscript could do? $\endgroup$
    – Peltio
    Commented Oct 9, 2013 at 15:55

1 Answer 1

10
$\begingroup$

You could use the Notation package:

<< Notation`
Symbolize[ParsedBoxWrapper[FractionBox["dσ", "dΩ"]]]
(dσ/dΩ)[Ε_, r_, θ_] := f[Ε, r, θ]

Notation package used to make a complicated symbol

$\endgroup$
1
  • $\begingroup$ Worked perfect! Thanks @TimothyWofford! $\endgroup$
    – stathisk
    Commented Oct 9, 2013 at 17:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.