simulation method