During this work, I found that SPEEDY does not conserve the mass perfectly, which results from the numerical problem of spectral dynamics.  So, I just corrected this problem empirically.  Since I know total amount of source from the surface, I multiplied the ratio of total mass that the model should have to the total mass that the model has into every gridpoint.