optimisation; calculate settings button