As Terry kindly provided a working sheet by adding an appropriate value for rho, here some additional remarks:
The calculation of the derivatives fails because of the end values (0s, 20s) as already explained

You may fix this by using try & catch

It may be worth to define a small utility function to do that job

!! !BUT ,,,
You can't assign these values to a variable for later use as its NOT a vector! So of course vectorization does not help at all

Despite of the misleading error message the true reason is (as written in my previous answer) that t is a range, not a vector!.
There is an undocumented trick to turn a range into a vector by following the assignment with an inline evaluation:

t_vec is now a legitimate vector, not a range (unfortunately ranges and vectors look the very same in Prime).
A more "legal" way to create that very same vector is seen here:

Now you can use this vector to create a table for later use - don't forget about vectorization (the arrow over the expression)

or create a more comprehensive table

But of course you still can't evaluate the functions and their derivatives symbolically as you tried to do because the functions derived by OdeSolve are numeric only.
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.

