Question: dsolve problem system of ODEs

I've got a system of ODEs I need to solve for dependant variables phi(t) and a(t) with independant variable t.(appologies, it's a bit messy; the maple tag isn't making things render nicely)

dsys := {(D(D(phi)))(t)+3*a(t)*(D(phi))(t)/(D(a))(t)+dOm(phi(t), a(t)) = 0, a(1000) = sqrt(2*sqrt((8*Pi^3*(1/45))*To)*1000), phi(1000) = 12*M^(alpha+4)*alpha*g^2*sqrt(8*Pi^3*(1/45))*To^((1/2)*alpha-1)*10^(1/(alpha+2)), (D(a))(t) = sqrt(RhoDE(phi(t), a(t))+RhoM(a(t))+RhoR(a(t)))*a(t), (D(phi))(1000) = 12*M^(alpha+4)*alpha*g^2*sqrt(8*Pi^3*(1/45))*To^((1/2)*alpha-1)*1000^(-(alpha+1)/(alpha+2))/(alpha+2)}

where I've already defined functions

dOm := proc (phi, a) options operator, arrow; -alpha*M^(4+alpha)/phi+(1/3)*(int(tra 2*g^2*k^4*((g^2*phi^2+k^2)^(1/2)/T(a)+1)*exp(-(g^2*phi^2+k^2)^(1/2)/T(a))/(g^2*phi^2+k^2)^(3/2), k = 0 .. infinity))/Pi^2 end proc;

> RhoDE := proc (phi, a) options operator, arrow; M^(4*alpha+4)/phi^alpha+(1/2)*(D(phi))(t)/a^2 end proc;

> RhoDM := proc (a) options operator, arrow; 42*10^126/a^3 end proc;

RhoR := proc (a) options operator, arrow; (1/15)*Pi^2*To^4/a^4 end proc;  

RhoM := proc (a) options operator, arrow; 7.6*10^126/a^3 end proc;  

The error I'm getting out of dsolve is baffling me:

> sol := dsolve(dsys, numeric); Error, (in unknown) invalid input: `dsolve/numeric/lexorder` expects its 2nd argument, b, to be of type {indexed, name, numeric}, but received phi(t)


... I don't see any extra phi(t) that should be causing this. Can anyone see where I've gone wrong? Thanks in advance.

Please Wait...