def METHOD_NAME(self, simdata, cell_model, ps, offset):
    data = []
    for var in ("positions", "morphologies", "rotations", "additional"):
        try:
            data.append(getattr(ps, f"load_{var}")())
        except DatasetNotFoundError:
            data.append(itertools.repeat(None))
    with fill_parameter_data(cell_model.parameters, data):
        instances = cell_model.create_instances(len(ps), *data)
        for id, instance in zip(ps.load_ids(), instances):
            cid = offset + id
            instance.id = cid
            instance.model = cell_model
            simdata.cells[cid] = instance