Source: https://www.usna.edu/ECE/ee301/Lecture%20Notes/EE301_Lesson_06_Current_Sources_and_Source_Conversion.pdf