On Tue, Mar 1, 2016 at 12:39 AM, Ed Bueler <[email protected]> wrote:
> Barry -- > > Will try it. > > > ... since, presumably, other more powerful IO tools exist that would be > used for "real" problems? > > I know there are tools for snapshotting from PETSc, e.g. VecView to .vtk. > In fact petsc binary seems fairly convenient for that. On the other hand, > I am not sure I've ever done anything "real". ;-) > > Anyone out there: Are there a good *convenient* tools for saving > space/time-series (= movies) from PETSc TS? I want to add frames and > movies from PETSc into slides, etc. I can think of NetCDF but it seems > not-very-convenient, and I am worried not well-supported from PETSc. Is > setting up TS with events (=TSSetEventMonitor()) and writing separate > snapshot files the preferred scalable usage, despite the extra effort > compared to "-ts_monitor_solution binary:foo.dat"? > I use HDF5, which is not ideal, but I see no alternative as yet. Matt > > Ed > > > On Mon, Feb 29, 2016 at 8:53 PM, Barry Smith <[email protected]> wrote: > >> >> Ed, >> >> I have added a branch barry/feature-ts-monitor-binary that supports >> -ts_monitor binary:timesteps that will store in simple binary format each >> of the time steps associated with each solution. This in conjugation with >> -ts_monitor_solution binary:solutions will give you two files you can read >> in. But note that timesteps is a simple binary file of double precision >> numbers you should read in directly in python, you cannot use >> PetscBinaryIO.py which is what you will use to read in the solutions file. >> >> Barry >> >> Currently PETSc has a binary file format where we can save Vec, Mat, IS, >> each is marked with a type id for PetscBinaryIO.py to detect, we do not >> have type ids for simple double precision numbers or arrays of numbers. >> This is why I have no way of saving the time steps in a way that >> PetscBinaryIO.py could read them in currently. I don't know how far we want >> to go in "spiffing up" the PETSc binary format to do more elaborate things >> since, presumably, other more power IO tools exist that would be used for >> "real" problems? >> >> >> > On Feb 29, 2016, at 3:24 PM, Ed Bueler <[email protected]> wrote: >> > >> > Dear PETSc -- >> > >> > I have a short C ode code that uses TS to solve y' = g(t,y) where >> y(t) is a 2-dim'l vector. My code defaults to -ts_type rk so it does >> adaptive time-stepping; thus using -ts_monitor shows times at stdout: >> > >> > $ ./ode -ts_monitor >> > solving from t0 = 0.000 with initial time step dt = 0.10000 ... >> > 0 TS dt 0.1 time 0. >> > 1 TS dt 0.170141 time 0.1 >> > 2 TS dt 0.169917 time 0.270141 >> > 3 TS dt 0.171145 time 0.440058 >> > 4 TS dt 0.173931 time 0.611203 >> > 5 TS dt 0.178719 time 0.785134 >> > 6 TS dt 0.0361473 time 0.963853 >> > 7 TS dt 0.188252 time 1. >> > error at tf = 1.000 : |y-y_exact|_inf = 0.000144484 >> > >> > I want to output the trajectory in PETSc binary and plot it in python >> using bin/PetscBinaryIO.py. Clearly I need the times shown above to do >> that. >> > >> > Note "-ts_monitor_solution binary:XX" gives me a binary file with only >> y values in it, but not the corresponding times. >> > >> > My question is, how to get those times in either the same binary file >> (preferred) or separate binary files? I have tried >> > >> > $ ./ode -ts_monitor binary:foo.dat # invalid >> > $ ./ode -ts_monitor_solution binary:bar.dat # no t in file >> > $ ./ode -ts_monitor_solution binary:baz.dat -ts_save_trajectory # no >> t in file >> > >> > without success. (I am not sure what the boolean option >> -ts_save_trajectory does, by the way.) >> > >> > Thanks! >> > >> > Ed >> > >> > PS Sorry if this is a "RTFM" question, but so far I can't find the >> documentation. >> > >> > >> > -- >> > Ed Bueler >> > Dept of Math and Stat and Geophysical Institute >> > University of Alaska Fairbanks >> > Fairbanks, AK 99775-6660 >> > 301C Chapman and 410D Elvey >> > 907 474-7693 and 907 474-7199 (fax 907 474-5394) >> >> > > > -- > Ed Bueler > Dept of Math and Stat and Geophysical Institute > University of Alaska Fairbanks > Fairbanks, AK 99775-6660 > 301C Chapman and 410D Elvey > 907 474-7693 and 907 474-7199 (fax 907 474-5394) > -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener
