A numerical methodology for worst-case and statistical tolerance analysis of rigid part assemblies