#include #include using namespace std; using namespace GiNaC; int main() { symbol A("A"), B("B"), C("C"), t("t"); ex a[11],b[11],c[11]; // a[2]=1,b[1]=1,c[2]=1; /* Bessel 0 */ // a[0]=1,b[1]=-2,c[2]=6; /* Hermite n=3 */ a[1]=1,b[0]=1, b[1]=-1,c[0]=2; /* Confluent HG */ symbol q_0("q_0"), q_1("q_1"), q_2("q_2"), q_3("q_3"), q_4("q_4"), q_5("q_5"),q_6("q_6"),q_7("q_7"),q_8("q_8"),q_9("q_9"),q_10("q_{10}"), q_11("q_{11}"),q_12("q_{12}"); int i,j; ex R1=a[0]*pow(t,0)+a[1]*pow(t,1)+a[2]*pow(t,2)+a[3]*pow(t,3)+a[4]*pow(t,4)+a[5]*pow(t,5)+a[6]*pow(t,6)+a[7]*pow(t,7)+a[8]*pow(t,8)+a[9]*pow(t,9)+a[10]*pow(t,10); ex R2=b[0]*pow(t,0)+b[1]*pow(t,1)+b[2]*pow(t,2)+b[3]*pow(t,3)+b[4]*pow(t,4)+b[5]*pow(t,5)+b[6]*pow(t,6)+b[7]*pow(t,7)+b[8]*pow(t,8)+b[9]*pow(t,9)+b[10]*pow(t,10); ex R3=c[0]*pow(t,0)+c[1]*pow(t,1)+c[2]*pow(t,2)+c[3]*pow(t,3)+c[4]*pow(t,4)+c[5]*pow(t,5)+c[6]*pow(t,6)+c[7]*pow(t,7)+c[8]*pow(t,8)+c[9]*pow(t,9)+c[10]*pow(t,10); ex Q=q_0*pow(t,0)+q_1*pow(t,1)+q_2*pow(t,2)+q_3*pow(t,3)+q_4*pow(t,4)+q_5*pow(t,5)+q_6*pow(t,6)+q_7*pow(t,7)+q_8*pow(t,8)+q_9*pow(t,9)+q_10*pow(t,10)+q_11*pow(t,11)+q_12*pow(t,12); ex dQ=diff(Q,t); ex ddQ=diff(dQ,t); ex EOM=expand(R1*ddQ+R2*dQ+R3*Q); cout<