make sim function interface more consistent