matrix simulation