Complex number drawing board
Cauchy-Riemann Equations drawing board
Draw complex sine in five clicks. update 2016-06-14
XYGraph v2.3 - web page graph   ☜☞   donate
Brief introduction Sample click sequence ; your help
selection ; drawing board 01, 02, CR, Laplace, rotate/move data
complex draw image list
Program environment Acer computer Aspire 5750Z-4830. MSIE 9.0 Version:9.0.8112.16421
xy graph works. Another Acer2 go online MSIE 11, xy graph not work.
TestFunction ; 3D broken line locus; 3D line parametric equation.
2016 world guestbook sign record zip file a, b, c, d; 2016glst.htm
2014 sign record a, b, c, d, e, f, g, h, i, j, s1, s2, s3; 2014glst.htm
<a name=cplxdraw_index>
2016-02-24-14-23 cplxdraw Image List
■ First Step: create input data x+i*y
■ Unit circle,Broken line,Parametric function 
■ input x+i*y Box21
■ RUN1⇒,RUN2⇒,RUN3⇒,RUN4⇒
■ RUN5⇒[Draw box61] get graph 
■ select complexFunction(x+i*y) 
■ output complexFunction() u+i*v to Box33
■ drawing board H/W,x/y max/min,line color 
<a name=cplxdraw_index02>
■ big drawing board top 
■ big drawing board bottom 
■ box61 store x+i*y ; run5⇒[draw box61] 
■ rotate/move box61 data;run⇒[rotate/move]  
■ save/input xygraph code ; [Draw Box62] 
■ 3D broken line locus; 
■ 3D line parametric equation
■ test function science2xy() and toCplx() 
<a name=cplxdraw_index03>
■ Cauchy-Riemann Equations drawing board 
■ CR drawing board H/W,x/y max/min 
■ CR FOUR drawing board top two board 
■ CR FOUR drawing board bottom two board 
■ CR drawing board example, CRRUN⇒[CRdraw] 
■ save FOUR CR drawing VML code 
■ freeman2.com saved complex draw jpg/gif list 
■ VML code drawing board draw01 
<a name=cplxdraw_index04>
■ VML code drawing board input Box91 
■ differentiation program 
■ document for run⇒[draw box61] 
■ 2016-01-31-13-23 LiuHH document 
■ 3D straight line parametric eq. derive 
■ 3D straight line parametric eq. Summary
■ update 2016-02-02 notes
■ derive rotation matrix in two dim. space
<a name=cplxdraw_index05>
■ update 2016-02-06 added Parametric section
■ Update 2016-02-20 added Limit section. 
   This is for Cauchy-Riemann Equations
■ How Cauchy-Riemann show, Lower Right board  CR Lower Right board how to change 1,2,3,4
■ How Cauchy-Riemann show, Upper Right board  CR Lower Left board draw f(x,y)=u+i*v 
■ CR Upper Left board draw No good reason for this choice.
■ [Do1] button document 
<a name=cplxdraw_index06>
■ ◯ ☑ unit circle and unit square 
■ composite function document 
■ cplxdraw.htm calculation may have error
■ Dear reader, please proofread
2016-02-24-15-28 stop 
■ circular mesh , square mesh 
■ mesh document 
■ mesh one pen draw , many pen draw
■ toPrecision(4) cut number short 
<a name=cplxdraw_index07>
■ annular mesh around singular point 
■ given target point, in output curve find 
   near point and match input curve point 
■ Laplace Equation drawing board 


<a name=start0> 2016-01-30-09-17 start 2014-02-05-09-53 Liu,Hsinhan created complex curve graph sin(z)*sin(z)+cos(z)*cos(z)=1 where z is a complex number example '1+2i' Graph URL http://freeman2.com/sin2cos2.gif Two years ago, 2014-02-05, LiuHH is the author. Today, 2016-01-30, LiuHH is a reader. Review earlier work recorded in http://freeman2.com/bioge009.htm It is complicated. LiuHH decide write a program http://freeman2.com/cplxdraw.htm do an easier job. 2016-01-30-09-28 stop <a name=a501302036> 2016-01-30-20-36 start 2016-01-30 work all day, get simple steps as below. Goto setFunction click the following buttons 1. click generate input data save to Box21, goto inp01 click Unit circle, for more choice 2. click generate output data save to Box33, function name1 to function name5 boxes has basic complex function names. These boxes value can be changed. Program defined function names click output list to Box53. 3. click copy Box33 value to box61, only data in box61 can be drawn. 4. click goto Box61 goto next draw button. 5. click now output curve is one pace above. If satisfy, use computer key board "copy screen" function, paste image to MSPaint (for example) and save to file. Second one pace above drawing board is control center to specify drawing board size, axis range and line color. Above buttons are all dummy. 2016-01-30-21-05 stop
<a name=inp01>
First Step: create input data,
array of complex numbers.

How to build input complex numbers?
Please click one radio button.
Composite function. used function name.
click Exampl$ (Example to yellow box) buttons.
Read document at 2016-02-24-11-25 start
Unit circle Broken line Parametric function
Limit (Cauchy-Riemann Eq.) Mesh
<a name=Sample_click_sequence> Following click buttons are dummy.
2016-03-07-18-22 document start
doRUN⇒ convert Box06 data to Box07 input (x,y) mesh.
Purple choice, click copy Box07 input mesh (x,y) to box61.
click goto box61 , click see input mesh without output mesh.

OR
red choice, click copy Box07 input mesh (x,y) to Box21.
User can copy/paste your own input (x,y) to Box21
Red choice build output mesh. goto used function name﹕ box. Copy function name
to long box, for example copy 'ccosh' to replace 'ctanf' and check small square box.
default cexpf checked . If follow sample click sequence, use cexpf as is.
<a name=a503071822>
Important step click RUN2⇒ from Box21 input
mesh (x,y) change to Box33 input(x,y)+output(x,y). This step get cplxFunc(z).
Next click RUN3⇒ copy Box33 in/out mesh (x,y) to Box61.
click RUN4⇒ goto box61 , click see input mesh and output mesh.

<a name=a503071823>
check points= draw lines show
cexpf(constant z value) get constant z lines. Next two type both OK.
INTEGER check points=[22,66,123] or (x,y) check points=[z=-1-0.2i;0.25,+1.4]
INTEGER and (x,y) cannot mix use. Above click buttons are dummy.
<a name=a503071824>
if output one function curve, check points=[ number ] draw equal z lines.
Line one end on input curve, other end on output curve.
draw triangles if output two function curves.
draw polygons if output three or more function curves.
If assign INTEGER, equal z lines on input/output curves exactly.
If assign (x,y), equal z lines NOT on input/output curves exactly.
2016-03-07-19-22 document stop
Get (x,y) from Box21 for better equal z lines. a504141605

RUN⇒

cplxFunc(z) read z from Box21. You can fill in your own data to Box21.
Box21∮ ; Box21 data 0,0 to

Box21 has input curve (x,y) data. Box33 has input/output (x,y). a504141654
move ; deg ; center ;
Box22, debug

QSboxd21.value=''



<a name=setFunction>
Following are active click buttons.
Keep input value near one. If circle radius=5
complex value near 80. cplxFunc(10) explode.

RUN1 create input data. Output to Box21 above.
Modify RUN1, goto inp01 build user circle/line.
RUN1⇒
SKIP RUN1 , paste user data to Box21 above, click RUN2 to continue.
RUN2⇒ Box33 data=complexFunction(Box21 data)
Before RUN2 , see below, in "used function name" column check right box.
RUN3⇒ Box33 has input and output curve.
RUN3⇒ Box21 has input curve.
RUN4⇒goto box61 box61 data can be drawn. Click "RUN5⇒" there.
Following function read input x+i*y from Box21
copy function name, paste to box, check square box. drawing board
used function name﹕  active function name  additional function
 csinf , ccosf , ctanf  conjf , csqrt , clogf
 cexpf , csinh , ccosh  cnegf , cexpi , cexpf
 ctanh , conjf , cnegf  casin , cacos , catan
 gamma , czeta  asinh , acosh , atanh
"(z)" ok, not use "()"  squar , cubic , zbarz
unchecked function will be skipped. checked function will be drawn.
Exampl$
Box33 left input (x,y); other output (x,y) , goto Box61
Box33, composite function help


Box34, calculator input

view ; click example, then click
Box34 (input) and Box35 (output) is a complex number calculator. Try examples.
Box35, debug ; example

These two buttons test gamma function
test RUN⇒  
[test Box34 command] copied from complex4.htm a502261510
zeta one point max iter.
zeta All points max iter. ; ; QSboxd35.value=''



<a name=draw02>
2016-01-29-17-53
Please use MSIE to read this page.
Graph area size, W: H:
x min: , x max: ; y min: , y max: ;
1st line color= , width= , SoliDot=
2nd line color= , width= , SoliDot=
3rd line color= , width= , SoliDot=
4th line color= , width= , SoliDot=
5th line color= , width= , SoliDot=
6th line color= , width= , SoliDot=
7th line color= , width= , SoliDot=
8th line color= , width= , SoliDot=
SoliDot has three choices, solid, dash, dot.
del Use x,y axis
Axes cross at x= , y= ,
graph label, x,y value must be within x min, x max; y min, y max
label 1x 1y text
label 2x 2y text
label 3x 3y text
label 4x 4y text
click [dText] delete all text, output graph no text.
Build or input data to Box61 or click [e0],[e1], click [Draw box61] get graph.
Output may contain error ; image
x,y range:
; ; ; ;

If see strange curve, first thing to try is to change x/y min/max above. more
Three triangles come from next [16 28 42]. Delete number, delete triangle.
check points=  Build data
Box61 input ex. run5⇒ ;

goto RUN2 ; ;
run⇒ p.move x,y: ; ?N
rotation angle degree﹕ ; rotation center x,y= ; rotDoc
above () below ?(4)
Box62 output xygraph code   ;

Box61 x,y to Box62 ; (multiple column x,y
click [Draw Box61] ). If box62 has "MyGraph.Plot(", click [Draw Box62].
[Draw Box61] build Box62 data. [wipe] curve. [Draw Box62] draw Box62 data.
Box63 output x,y data
Box64 polygon x,y
Box65
Box66
3D broken line locus; 3D line parametric equation.
; parametricLine(arg1,arg2) output to Box67
[many 3D pts] and [Three 3D eqn] call parametricLine()
; parametricLine(a1,a2,a3) output to Box67
[3D(A)] and [3D(B)] call parametric3DLine(), a better version.
Box67
Box68
Split box61 data to or or  
Box69 ; , ;sep3=

QTboxd69.value='string'; Next buttons use Box69 as input, Box67,68 as output.
fill example to Box69 2016-02-02-10-08
buttons added to test function science2xy() and function toCplx().
test function (output Box67) and (output Box68)
[E63] then [science2xy()] output error. [E63] then [toCplx()] output OK.





<a name=draw03>
2016-02-15-07-18
Please use MSIE to read this page. Line color control
Graph area size, W: H:
x min: , x max: ; y min: , y max: ;
x,y range: a502161735
Cauchy-Riemann Equations drawing board
All real functions are NOT CR compatible, run sin(x)
Lower Right board draw (ux,step)...(vy,step) choose two //?A a502250841
Upper Left draw [(ux,uy) and (vx,vy) ] or [ (ux,vx) and (uy,vy)] ?B a502251929
Click [a0]...[b4],[i0]...[i3] or fill data to Box71, click CRRUN⇒ get graph.
?1
?2
C
R

s
h
o
w
?3
?4
C
R

s
h
o
w
Curve may be ERROR! Cauchy-Riemann Equations drawing board. Click [a2], [CRdraw]
Example:
Box71, :CRRUN⇒ ;

numerical dx= :CRRUN☞
Box71 back up to Box72. rotate/move circle/square only, ╋ not change.
rotate/move parallel move x,y: run⇒ in/out both Box71
rotation angle degree﹕ ; rotation center x,y﹕ ; rot Doc
Build or skip in/output curves (x,y) data? SKIP (x,y), faster.
Box72, ?D ∂u/∂x=∂v/∂y , ∂u/∂y=-∂v/∂x

Why ◯ ☑ no four color? After Rotate/Move, click , get four color. a504191436
Box73 save Upper Left graph
Box74 save Upper Right graph
Save four boxes VML code for future reproduce. Click [save curve], read Box62.
Paste VML code to Box91, then click [Draw Box91 VML code]

Box75 save Lower Left graph
Box76 save Lower Right graph
First VML code erased right after second draw. ;
QGdata76.value=''


<a name=draw04>
2016-05-27-21-50
Laplace equation and Harmonic Functions
Graph area size, W: H:
x min: , x max: ; y min: , y max:
Above small drawing board. Below big drawing board. a505281617
Graph area size, W: H:
x min: , x max: ; y min: , y max: ;
Laplace Equation drawing board Output may contain error ; image
LaplaceRUN☞ ; ;
Upper Left draw [(ux,uy) and (vx,vy) ] or [ (ux,vx) and (uy,vy)] ?B a505282150
?5
?6
L
a
p
l
a
c
e
?7
?8

x
=
s
t
e
p
Curve may be ERROR! Laplace Equation drawing board. Click [a7], [LaplaceDraw]
LChoice: ; How? Numerical calc.
ex.$ ; NUdx= ;
ex.# ; LaplaceRUN: ;
L
a
p
l
a
c
e

x
=
s
t
e
p
x:min/max ; y:min/max ; two arms ; ?9
drawing board document.

x,y range:
Box81 input LaplaceRUN☞ ; ;

any size / ;RUN: , ; ; ?回
move deg center ;
Box82 output xygraph code why no color? click ☰ add color.

Box83 save Upper Left graph
Box84 save Upper Right graph
Save four boxes VML code for future reproduce. Click [save curve], read Box62.
Paste VML code to Box91, then click [Draw Box91 VML code]

Box85 save Lower Left graph
Box86 save Lower Right graph
First VML code erased right after second draw.
Box87 debug , , , , ,

Ex& ;RUN: , ; ; ; ?回
Box88 debug

QLboxd88.value='' ; ∂∂u/∂x/∂x+∂∂u/∂y/∂y=0 ; ∂∂v/∂x/∂x+∂∂v/∂y/∂y=0 ;
∂∂u/∂x/∂y , ∂∂v/∂x/∂y , ∂∂u/∂y/∂x , ∂∂v/∂y/∂x ;


<a name=cplxdrawImageList>
Complex number curve image files
http://freeman2.com/complex2.gif ; complex2.jpg
sin(complex), cos(complex), input unit circle.
http://freeman2.com/complex4.gif ; complex4.jpg
exp(complex), tan(complex), input unit circle.
http://freeman2.com/complex6.gif
sin(complex), cos(complex), input unit SQUARE.
http://freeman2.com/cplxdraw.jpg
sin(complex), cos(complex), input unit circle.
http://freeman2.com/cplxdra1.jpg
Epitrochoid, Hypotrochoid. ISBN 0-486-60288-5 J. Dennis Lawrence
http://freeman2.com/cplxdra2.jpg
Involute of a circle ; Huygens, 1693
http://freeman2.com/cplxdra3.jpg
sin(z*z)+cos(z*z) where z=x+i*y input is a ╋ path.
http://freeman2.com/cplxdra4.jpg
sin(z*z)+cos(z*z) where z=x+i*y input is unit circle.
2016-02-20-14-27 record
http://freeman2.com/cplxdra5.jpg
cos(sin(z)) and sin(z)*sin(z)+cos(z)*cos(z)≡1 . a502241937
http://freeman2.com/cplxdra6.jpg gear example.
Input unit circle with sine. Output f(z)=sin(z)^cos(z) . a502261653
http://freeman2.com/cplxdra7.jpg
Circular mesh complex function mapping graphs. a503010923
http://freeman2.com/cplxdra8.jpg
Square mesh complex function mapping graphs. a503010925
http://freeman2.com/cplxdra9.jpg
Square mesh cexpf(z) equal z blue lines. a503152213
<a name=cplxdr10>
Next is mesh open a hole around singular point.
cplxdraw.htm capability on/after update 2016-04-11

http://freeman2.com/cplxdr10.jpg
Square mesh 1/z confirmed from other source. a504101702
http://i.stack.imgur.com/kPZVZ.png
http://freeman2.com/cplxdr11.jpg
Move on critical line x=0.5,y=t (input) zeta function czeta(z) graph
Online has many other graph confirm cplxdr11.jpg
http://freeman2.com/cplxdr12.jpg
zeta function czeta(z) root 1 to root 10 output mesh sit on (0,0)
Online may not have other graph confirm cplxdr12.jpg
http://freeman2.com/cplxdr13.jpg
zeta function czeta(z) input path from z=0.5-15i to z=0.5+15i
Parameter t, tstep=0.01; tbgn0=-15; tend0=15. root 1 = 0.5+i*14.134725
w=czeta(0.5+t*i) . cplxdr13.jpg draw [t,real(w)] and [t,imag(w)]
https://www.wolframalpha.com/ plot zeta confirm cplxdr13.jpg
http://freeman2.com/cplxdr14.jpg  text
f(z)=exp(-1/z/z/z/z) approach to zero and approach to infinity at same time