<div dir="ltr">Dear list,<br><br>Using GiNaC one can define a symbolic/formal function f of two variables as follows:<br><br>    DECLARE_FUNCTION_2P(f)<br>    REGISTER_FUNCTION(f, dummy())<br><br>Formal derivatives can be computed by defining symbols x, y and calculating e.g.<br><br>    f(x,y).diff(x, 3).diff(y, 2)<br><br>which is printed as<br><br>    D[0,0,0,1,1](f)(x,y)<br><br>This is fantastic. Now, I would like to obtain the list [0, 0, 0, 1, 1] from the above expression.<br>Checking the printing code GiNaC::fderivative::do_print, this is stored in a GiNaC::paramset.<br>However, it's protected, and it doesn't seem to be accessible by any method. My attempt<br><br>    if (is_a<fderivative>(e))<br>    {<br>        fderivative fder = ex_to<fderivative>(e);<br>        for (auto x : fder.parameter_set)<br>            cout << x << ", ";<br>    }<br><br>therefore fails. Could an accessor or some such be implemented so this (basic) operation becomes possible?<br><br>Best regards,<br>Ricardo<br></div>