update progress
update progress
half od newtone method