David, a couple of issure: The current code, when setting the velocity, calls "set_elemement_state()" each timestep. This also sets the tracers, but I think only at the future timelevel, which is then overwritten by the actual tracer timestep. But I wanted to make sure this was correct?
Second question: where is the best place to set the values of tracers 5..qsize? If it was done in "set_element_state" it would automatically apply to all test cases, but this doesn't seem like a good idea.
Finally, if we bump this up to 50 tracers, becuae of the way set_element_state() works, we will make a copy of them every timestep. I worry this will skew our timings a small amount. As this copy is unneeded, should this dcmip wrapper interface be changed, perhaps a set_dynamics_state and set_tracer_state?
David, a couple of issure: The current code, when setting the velocity, calls "set_elemement_state()" each timestep. This also sets the tracers, but I think only at the future timelevel, which is then overwritten by the actual tracer timestep. But I wanted to make sure this was correct?
Second question: where is the best place to set the values of tracers 5..qsize? If it was done in "set_element_state" it would automatically apply to all test cases, but this doesn't seem like a good idea.
Finally, if we bump this up to 50 tracers, becuae of the way set_element_state() works, we will make a copy of them every timestep. I worry this will skew our timings a small amount. As this copy is unneeded, should this dcmip wrapper interface be changed, perhaps a set_dynamics_state and set_tracer_state?