Object-oriented implementation of the alternating directions implicit solver for isogeometric analysis. (February 2019)