Hi
We have a simulation which record v into a vector then save to a file. But the saving to file process after the whole simulation. How to program to save to data file each timestep in the simulation.
Thanks!
-Henry
Save data file each time step
-
- Site Admin
- Posts: 6305
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Save data file each time step
Use a custom proc advance()
proc advance() {
fadvance()
print_data_to_output_file()
}
where print_data_to_output_file() contains a statement* that prints the data you're interested in to the output file. Just make sure that you open the output file for writing before calling run(), and close it after calling run().
You're still going to get buffered file output--modern operating systems generally do not write data to disk just a few bytes at a time. Instead, they accumulate data in a buffer until the buffer is full enough to trigger a write operation, or until you close the file.
*--this could be a statement of the form
filobj.printf("format", args)
See the Programmer's Reference for information about the File class's methods
http://www.neuron.yale.edu/neuron/stati ... /file.html
proc advance() {
fadvance()
print_data_to_output_file()
}
where print_data_to_output_file() contains a statement* that prints the data you're interested in to the output file. Just make sure that you open the output file for writing before calling run(), and close it after calling run().
You're still going to get buffered file output--modern operating systems generally do not write data to disk just a few bytes at a time. Instead, they accumulate data in a buffer until the buffer is full enough to trigger a write operation, or until you close the file.
*--this could be a statement of the form
filobj.printf("format", args)
See the Programmer's Reference for information about the File class's methods
http://www.neuron.yale.edu/neuron/stati ... /file.html