▼Fast/Simple/Robust/Trivial Op-Amp + BJT Setup▼
→ apx. 16mA ±30µA(0.2%)
[fig.1]
▼Complex/Trivial Op-Amp + BJT Setup▼
→ apx. 18mA ±24µA(0.1%)
[fig.2]
▼Simple/Experimental BJT Setup ( !? the Best ?! )▼
→ apx. 18mA ±60nA(0.0003%)
[fig.3]
▼Full/Trivial BJT + N-jFet Setup ( also better than any op-amp variant ??? )▼
→ apx. 18mA ±300nA(0.002%)
[fig.4]
▼Complex/Experimental Op-Amp + MOS-Fet Setup▼
(likely worse than it's BJT alternate -- the 2-nd ↑↑ fig. )
→ apx. 18mA ±120µA(0.7%)
[fig.5]
▼Trying to get it right here▼
-- it seems that the op-amps should be fed from the separate supplies or otherwise the PSRR won't recover the precision reached at reference voltages
→ apx. 18mA ±48µA(0.3%)
[fig.6]
((the work is in progress ...))
▼
If you are stupid then knowing the right Op-Amp-s could save your day▼
(the node "SE" had the greatest error although the node "a0" has the least ??? -- about LT1012A)
→ apx. 18mA ±10µA(0.06%)
[fig.7]
-------- Update 2017.12.24 ::
▼a conditional opposite to
"If you are stupid then knowing the right Op-Amp-s could save your day"▼
→ apx. 18mA ±7µA(0.04%)
[fig.8.1]
a "Russian LM308" **
[fig.8.2]
** it's nearest LT's substitute (so far)
[Eop]