I don't think you can compensate for screw inaccuracy in software because the error can vary from plus to minus. That is, if a lead screw is 4 thou short in a given length of 1 foot it may pick that up again in the next foot, so that at 2 feet the error would be 0.
Software can compensate for some backlash in the drive nuts because it is consistant from one reversal to the next. Although backlash does grow over time due to wear on the parts.
= = = = =
"Those who question the Bible have whys for the word."
(an example of implied chiasmus, reversing "word for the wise")
- - Frederick J. Ernst