At 05:29 PM 8/26/2003 +0100, you wrote:
You must have something coded wrong inside of your type. I have written several models that do exactly as you describe and the results are as expected.Into the original program, I used a time step of 0.001h and it delivered the appropriate results. Under TRNSYS, I declared the internal time step as a parameter and assigned it the same value (0.001h). But it seems that there is a "conflict" between the internal time step and the general time step of simulation. As a matter of fact, I can't put in the main control card a general time step much bigger than the short internal time step of the subroutine. The bigger the ratio between the two values is, the longer it is to reach the stationary regime of the boiler.
Have you tried solving the differential equations analytically (or using an approximate analytical solution) inside of the type? I have used that approach several times (most notably inside of our storage tank models) with great result. In fact I was able to run several models at an hourly timestep that failed using the numerical approach when the timestep exceeded about 1/100th of an hour.I also tried to use the Diffeq subroutine from the Trnsys library to solve the differential equations and avoid using an internal time step. Actually, the model does not have the required dynamics either. It reaches the stationary regime but it takes a time much longer than the model tested outside TRNSYS.