Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top
k1 = 1;
k2 = 5;
t0 = 0;
ts = 10000000;
t01 = ts - ts/3;
t02 = 7000;
tfnh = 500;
t0nh01 = tfnh/3;
tf = ts;
bv2 = 0;
bb2 = 0;

fh = 0.99;
b10 = 1.0
h10 = fh*b10*(k2/k1)

h20 = 0
Rm2 = 12000;

soln2dec = 
   h1'[t] == (2/3)*h2[t]*b1[t] - (2/3) (k1/k2)^2*h1[t] - 2*h1[t] (k1/k2)^2/Rm2, 
   h2'[t] == -(2/3)*h2[t]*b1[t] + (2/3) (k1/k2)^2*h1[t] - 2*h2[t]/Rm2,
   b1'[t] == (2/3) h1[t]*h2[t] (k1/k2)^2 - (2/3)*
     b1[t] (k1/k2)^2 - (2/Rm2) b1[t] (k1/k2)^2, h1[0] == h10, 
   b1[0] == b10, h2[0] == h20}, {h1, h2, b1, h1', h2', b1'}, {t, t0, ts}, 
 MaxSteps -> 15000000]

Export["logb1k5Rm12000.dat", Evaluate[{b1[t]} /. soln2dec], "TSV"]

Export["logh2k5Rm12000.dat", Evaluate[{h2[t]} /. soln2dec], "TSV"]

Export["logh1k5Rm12000.dat", Evaluate[{h1[t]} /. soln2dec], "TSV"]

Export["logh1dk5Rm12000.dat", Evaluate[{h1'[t]} /. soln2dec], "TSV"]

Export["logh2dk5Rm12000.dat", Evaluate[{h2'[t]} /. soln2dec], "TSV"]

Export["logb1dk5Rm12000.dat", Evaluate[{b1'[t]} /. soln2dec], "TSV"]

The first three exports rightly retrieve the data. But the last three seem to retrieve the function itself and not the derivatives.

Is there a way out ?

share|improve this question
Calling Export["logb1k5Rm12000.dat", Evaluate[{b1[t]} /. soln2dec], "TSV"] won't give you what you expect... did you checked it? – mmal Aug 8 '13 at 14:35

First, after running your code, I ran

Plot[Evaluate[{h1[t] /. soln2dec[[1, 1]], h1'[t] /. soln2dec[[1, 4]]}], {t, 0, 10^7}]

Output from Mathematica

They are clearly different functions. Your problem is not at the point where soln2dec was computed.

Second, I ran

Plot[Evaluate[{(h1'[t] /. soln2dec[[1, 1]]) - (h1'[t] /. soln2dec[[1, 4]])}], {t, 0, 10^7}]

The output was was a flat line at zero. This tests shows that computing h1'[t] from the interpolated h1[t] is equivalent to use the 4-th rule in soln2dec. In fact, I would modify the third parameter you passed to NDSolve from

{h1, h2, b1, h1', h2', b1'}


{h1, h2, b1}

Third, I ran a comparison tool on the seemingly same files and I got enter image description here

The first few lines are almost identical, but they are definitely different functions.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.