nanover.recording.split_cli module

Split a NanoVer recording into multiple parts.

Example when used as a cli:

# show the help
nanover-split-recording --help

# split a recording whenever the frame resets
nanover-split-recording recording.traj recording.state

# split a recording whenever the simulation counter key changes and include a custom key's value in the resulting filenames
nanover-split-recording recording.traj recording.state -s system.simulation.counter -n puppeteer.simulation-name
nanover.recording.split_cli.get_value(event: RecordingEvent, key: str)
nanover.recording.split_cli.main()
nanover.recording.split_cli.make_key_change_predicate(key: str)
nanover.recording.split_cli.make_key_name_template(key: str)
nanover.recording.split_cli.name_basic(*, input_stem: str, index: int, last_event: RecordingEvent)
nanover.recording.split_cli.split_on_frame_reset(event: RecordingEvent)
nanover.recording.split_cli.split_on_sim_counter_change(event: RecordingEvent)
nanover.recording.split_cli.split_recording(*, traj: ~os.PathLike[str] | None = None, state: ~os.PathLike[str] | None = None, split_predicate: ~typing.Callable[[~nanover.recording.utilities.RecordingEvent], bool] = <function split_on_frame_reset>, name_template=<function name_basic>)
Parameters:
  • traj – Path of a NanoVer trajectory recording

  • state – Path of a NanoVer state recording

  • split_predicate – Predicate function that takes information about the next frame and returns True if the

recording should split at this point. :param name_template: Function that generates a filename for each recording.