next up previous contents index
Next: Dynamic Objects Supervising TimeStep Up: TimeStep Previous: Methods for Creating TimeStep

Other Methods on TimeStep

 

   tex2html_wrap44580    tex2html_wrap44582
TIMESTEP * step
char * method
"display" sends "display" to the pre_object and -- if it differs from the pre_object -- to the post_object of step.

If method is a display method (i.e. has the suffix "-disp") "universal" only sends it to the objects of step, other methods are send to the objects of all TimeSteps in the step sequence. As for "display" the method is only sent once if pre_object and post_object are identical.

   tex2html_wrap44584    tex2html_wrap44586    tex2html_wrap44588    tex2html_wrap44590    tex2html_wrap44592
TIMESTEP * step
double time
INSTANCE * inst
"get" returns the TimeStep with time time in the sequence step if it exists, otherwise it returns NULL. Be careful, this method isn't able to handle cyclic TimeSteps (first pointing to last and vice versa).

"get-step" returns the TimeStep in the step sequence with time less than or equal to time, if time is smaller than all times in the sequence the first step is returned. "get-pre-obj" returns the pre_object of the step with time greater than or equal to time, "get-post-obj" returns the post_object of the step with time less than or equal to time (the post_object of the step returned by "get-step").

To access all objects in the TimeStep sequence step "get-next-obj" can be used. If called with a NULL instance inst it returns the first object in the sequence (step-> pre_object), otherwise it returns the next object following inst (the post_object of a step if inst is its pre_object and the pre_object and post_object differ else the pre_object of the following step). Be careful, NULL objects in the TimeStep sequence will get you into trouble.

   GRAPE(step, "get-times")(stime, etime)
TIMESTEP * step
double * stime, * etime
This method determines the times of the first and the last TimeStep in the step sequence and stores them in stime and etime.

   GRAPE(step, "goto-time")(time)
TIMESTEP * step
double time
Find the TimeStep belonging to time time and call "goto-instance" on the standard Manager to set it as the current instance (see 7.1.1.2). This method is for example called by "goto-time-send" on class TimeScene if step is set as dynamic object.

   (TIMESTEP * ) GRAPE(TimeStep/step, "read")()
CLASS * TimeStep
TIMESTEP * step
Read a TimeStep sequence from the standard textdevice and return the first step (NULL in case of an error). This method is only provided for backward compatibility to read files written with "write", it is replaced by

   GRAPE(step, "xdr")(xdrp)
TIMESTEP * step
XDR * xdrp
Read the instance step from or write it to the XDR stream xdrp. This method should not be called directly, refer to 5.7 (expecially 5.7.3) for details.

Since the GRAPE XDR system handles references automatically all TimeSteps in the sequence are read or written recursively, see the method code in section 5.7.6.2.

   GRAPE(step, "merge")(step_two)
TIMESTEP * step, * step_two
Merge the pre_objects and post_objects of all TimeSteps in the sequences step and step_two into those of step. Of course the number of steps, their times and the geometry structures of the objects of the sequences have to be identical to be able to merge them.

   GRAPE(step, "refine")(time)
TIMESTEP * step
double time
Refine the TimeStep sequence step at the given time. If time is between steps the post_object of the step before time and the pre_object of the following step have the same discretization, both are refined in the same way. If time is exactly on a step this step and its pre_step and post_step have to be refined. If necessary "refine" splits the pre_object and the post_object of the steps that are refined.

   GRAPE(step, "equiangulate")(time, method)
TIMESTEP * step
double time
char * method
As "refine" (see above) this method handles the connectivity in the TimeStep sequence step and sends the method (usually "equiangulate-send", see 6.3.1.4) to the appropriate objects. Currently time must be the time of one of the steps, if time is between steps only an error message is printed.

   tex2html_wrap44608    tex2html_wrap44610
TIMESTEP * step
XLIST * xlist
INSTANCE * follow[3][3]
char pop_push[3][3]
Refer to section 5.4.7.3 for an explanation of the "get-info" and "follow" methods.

"follow" adds the pre_step (bottom), pre_object (bottom right), post_object (top right) and post_step (top) instances to the step's environment in the manager.

"get-info" adds information about the times of the step, its pre_step and post_step and about the classes of the pre_object and post_object to the info xlist.

   GRAPE(step, "get-bnd-box")(xmin, xmax, ymin, ymax, zmin, zmax)
TIMESTEP * step
double xmin, xmax, ymin, ymax, zmin, zmax
Compute the bounding box of the step's objects.


next up previous contents index
Next: Dynamic Objects Supervising TimeStep Up: TimeStep Previous: Methods for Creating TimeStep

SFB 256 Universität Bonn and IAM Universität Freiburg

Copyright © by the Sonderforschungsbereich 256 at the Institut für Angewandte Mathematik, Universität Bonn.