0

From an expression describing a mathematical function, I would like to extract its parameters. For example, from the expression 4 Sin[2 a x^2 + b x + c], assuming that x is the function variable, I would like to have {a,b,c}.

I tried using patterns with FixedPoint and the TreeForm to select the leaves with heads corresponding to Symbol (but x), but unfortunately unsuccessfully.

Mammouth
  • 481
  • 2
  • 9

1 Answers1

5
expr = 4 Sin[2 a π x^2 + b x + c] + d E^f;

Cases[Level[expr, {-1}], Except[x, _Symbol?(! NumericQ[#] &)]] // Union

(*  {a, b, c, d, f}  *)

Or

Cases[Level[expr, {-1}], Except[x | _?NumericQ, _Symbol]] // Union

(*  {a, b, c, d, f}  *)
Bob Hanlon
  • 157,611
  • 7
  • 77
  • 198