box% octave GNU Octave, version 5.2.0 Copyright (C) 2020 John W. Eaton and others. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, type 'warranty'. Octave was configured for "x86_64-pc-linux-gnu". Additional information about Octave is available at https://www.octave.org. Please contribute if you find this software useful. For more information, visit https://www.octave.org/get-involved.html Read https://www.octave.org/bugs.html to learn how to submit bug reports. For information about changes from previous versions, type 'news'. octave:1> [X,Y] = meshgrid(linspace(-1,1,1000)); octave:2> Z = X + 1j*Y; octave:3> Z = Z(:); octave:4> Z = Z(abs(Z) < 1); octave:5> W = Z ./ (abs(Z) .* (1 - abs(Z))); octave:6> plot(W), axis([-10 10 -10 10]) octave:7>