.MCAD 303010000 1 0 57 0 .CMD PLOTFORMAT 0 0 1 1 0 0 1 0 0 1 1 0 0 1 0 1 0 0 NO-TRACE-STRING 0 2 1 0 NO-TRACE-STRING 0 3 2 0 NO-TRACE-STRING 0 4 3 0 NO-TRACE-STRING 0 1 4 0 NO-TRACE-STRING 0 2 5 0 NO-TRACE-STRING 0 3 6 0 NO-TRACE-STRING 0 4 0 0 NO-TRACE-STRING 0 1 1 0 NO-TRACE-STRING 0 2 2 0 NO-TRACE-STRING 0 3 3 0 NO-TRACE-STRING 0 4 4 0 NO-TRACE-STRING 0 1 5 0 NO-TRACE-STRING 0 2 6 0 NO-TRACE-STRING 0 3 0 0 NO-TRACE-STRING 0 4 1 0 NO-TRACE-STRING 0 1 21 15 0 3 .CMD FORMAT rd=d ct=10 im=i et=3 zt=15 pr=3 mass length time charge temperature tr=0 vm=71631 .CMD SET ORIGIN 0 .CMD SET TOL 0.001000000000000 .CMD SET PRNCOLWIDTH 8 .CMD SET PRNPRECISION 4 .CMD PRINT_SETUP 1.200000 0.000000 0.000000 0.000000 0 .CMD HEADER_FOOTER 1 1 *empty* *empty* *empty* 0 1 *empty* *empty* *empty* .CMD HEADER_FOOTER_FONT fontID=14 family=Arial points=10 bold=0 italic=0 underline=0 .CMD HEADER_FOOTER_FONT fontID=15 family=Arial points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE_NAME fontID=0 name=Variables .CMD DEFINE_FONTSTYLE_NAME fontID=1 name=Constants .CMD DEFINE_FONTSTYLE_NAME fontID=2 name=Text .CMD DEFINE_FONTSTYLE_NAME fontID=4 name=User^1 .CMD DEFINE_FONTSTYLE_NAME fontID=5 name=User^2 .CMD DEFINE_FONTSTYLE_NAME fontID=6 name=User^3 .CMD DEFINE_FONTSTYLE_NAME fontID=7 name=User^4 .CMD DEFINE_FONTSTYLE_NAME fontID=8 name=User^5 .CMD DEFINE_FONTSTYLE_NAME fontID=9 name=User^6 .CMD DEFINE_FONTSTYLE_NAME fontID=10 name=User^7 .CMD DEFINE_FONTSTYLE fontID=0 family=Times^New^Roman points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=1 family=Times^New^Roman points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=2 family=Arial points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=4 family=Arial points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=5 family=Courier^New points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=6 family=System points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=7 family=Script points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=8 family=Roman points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=9 family=Modern points=10 bold=0 italic=0 underline=0 .CMD DEFINE_FONTSTYLE fontID=10 family=Times^New^Roman points=10 bold=0 italic=0 underline=0 .CMD UNITS U=1 .CMD DIMENSIONS_ANALYSIS 0 0 .TXT 4 1 57 0 Cg a15.125000,85.125000,19 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain File Name: pcm.mcd} } .TXT 5 0 1 0 Cg a69.000000,73.000000,195 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {This program calculates Signal to Quantization Noise Ratio for input signal with uniform density without and with mu-law compandor. The input samples and the quantization errors are plotted.}} } .EQN 7 0 2 0 {0:norun}NAME:100 .EQN 0 11 3 0 {0:mp}NAME:10 .EQN 0 7 4 0 {0:j}NAME:1;{0:norun}NAME .TXT 0 11 5 0 Cg a34.750000,44.000000,51 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {norun is the number of run, mp is the peak value}} } .EQN 4 -29 6 0 ({0:m}NAME)[({0:j}NAME):{0:rnd}NAME(2*{0:mp}NAME)-{0:mp}NAME .TXT 0 19 7 0 Cg a46.375000,54.000000,65 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {mj are samples (-mp, mp) of input message with uniform density}} } .EQN 5 -19 8 0 {0:n}NAME:8 .TXT 0 8 9 0 Cg a24.625000,65.000000,37 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {n is the number of bits per sample}} } .EQN 4 -8 10 0 {0:L}NAME:(2)^({0:n}NAME) .TXT 0 8 11 0 Cg a17.500000,65.000000,28 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {L is the number of levels}} } .EQN 4 -8 12 0 {0:S}NAME:2*({0:mp}NAME)/({0:L}NAME) .TXT 0 10 13 0 Cg a12.750000,63.000000,21 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {S is the step size}} } .EQN 6 -10 14 0 ({0:e}NAME)[({0:j}NAME):{0:mod}NAME(({0:m}NAME)[({0:j}NAME)+{0:mp}NAME,{0:S}NAME) .TXT 0 19 15 0 Cg a0.500000,54.000000,4 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain { }} } .EQN 5 -19 16 0 ({0:e}NAME)[({0:j}NAME):{0:if}NAME(({0:e}NAME)[({0:j}NAME)>({0:S}NAME)/(2),({0:e}NAME)[({0:j}NAME)-{0:S}NAME,({0:e}NAME)[({0:j}NAME)) .TXT 0 19 17 0 Cg a25.375000,54.000000,39 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {ej are samples of quantization error}} } .EQN 6 -19 18 0 ({0:sqe}NAME)[({0:j}NAME):({0:e}NAME)[({0:j}NAME)*({0:e}NAME)[({0:j}NAME) .EQN 5 0 19 0 {0:mse}NAME:((1)/({0:norun}NAME))*{0:j}NAME$({0:sqe}NAME)[({0:j}NAME) .TXT 0 22 20 0 Cg a30.500000,51.000000,44 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {mse is the mean square quantization error}} } .EQN 7 -22 21 0 {0:mss}NAME:((1)/({0:norun}NAME))*{0:j}NAME$({0:m}NAME)[({0:j}NAME)*({0:m}NAME)[({0:j}NAME) .TXT 0 23 22 0 Cg a30.875000,50.000000,45 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {mss is the mean square value of the signal}} } .EQN 6 -23 23 0 {0:SNRo}NAME:({0:mss}NAME)/({0:mse}NAME) .TXT 0 17 24 0 Cg a46.750000,56.000000,67 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {SNRo is the signal to quantization noise ratio without compandor}} } .EQN 5 -17 25 0 {0:dB}NAME:10*{0:log}NAME({0:SNRo}NAME) .TXT 0 17 26 0 Cg a37.750000,56.000000,58 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {dB is the signal to quantization noise ratio in decibel}} } .EQN 4 -17 27 0 {0:SNRo}NAME={0}?_n_u_l_l_ .EQN 0 15 28 0 {0:dB}NAME={0}?_n_u_l_l_ .EQN 1 -14 29 0 &&(-10&10)&({0:m}NAME)[({0:j}NAME)@&&(0&100)&{0:j}NAME 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 1 0 0 NO-TRACE-STRING 0 2 1 0 NO-TRACE-STRING 0 3 2 0 NO-TRACE-STRING 0 4 3 0 NO-TRACE-STRING 0 1 4 0 NO-TRACE-STRING 0 2 5 0 NO-TRACE-STRING 0 3 6 0 NO-TRACE-STRING 0 4 0 0 NO-TRACE-STRING 0 1 1 0 NO-TRACE-STRING 0 2 2 0 NO-TRACE-STRING 0 3 3 0 NO-TRACE-STRING 0 4 4 0 NO-TRACE-STRING 0 1 5 0 NO-TRACE-STRING 0 2 6 0 NO-TRACE-STRING 0 3 0 0 NO-TRACE-STRING 0 4 1 0 NO-TRACE-STRING 0 1 56 18 0 3 .EQN 25 0 30 0 &&(_n_u_l_l_&_n_u_l_l_)&({0:e}NAME)[({0:j}NAME)@&&(_n_u_l_l_&_n_u_l_l_)&{0:j}NAME 0 0 1 1 0 0 1 0 0 1 1 0 0 1 0 1 0 0 NO-TRACE-STRING 0 2 1 0 NO-TRACE-STRING 0 3 2 0 NO-TRACE-STRING 0 4 3 0 NO-TRACE-STRING 0 1 4 0 NO-TRACE-STRING 0 2 5 0 NO-TRACE-STRING 0 3 6 0 NO-TRACE-STRING 0 4 0 0 NO-TRACE-STRING 0 1 1 0 NO-TRACE-STRING 0 2 2 0 NO-TRACE-STRING 0 3 3 0 NO-TRACE-STRING 0 4 4 0 NO-TRACE-STRING 0 1 5 0 NO-TRACE-STRING 0 2 6 0 NO-TRACE-STRING 0 3 0 0 NO-TRACE-STRING 0 4 1 0 NO-TRACE-STRING 0 1 54 15 0 3 .EQN 35 1 31 0 {0:mu}NAME:255 .TXT 0 11 32 0 Cg a33.125000,57.000000,46 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {mu is the parameter in the mu-law compandor}} } .EQN 9 -12 33 0 ({0:mc}NAME)[({0:j}NAME):{0:if}NAME(({0:m}NAME)[({0:j}NAME)>0,({0:ln}NAME(1+{0:mu}NAME*(({0:m}NAME)[({0:j}NAME))/({0:mp}NAME)))/({0:ln}NAME(1+{0:mu}NAME)),-((({0:ln}NAME(1-{0:mu}NAME*(({0:m}NAME)[({0:j}NAME))/({0:mp}NAME)))/({0:ln}NAME(1+{0:mu}NAME))))) .EQN 5 1 34 0 &&(_n_u_l_l_&_n_u_l_l_)&({0:mc}NAME)[({0:j}NAME)@&&(_n_u_l_l_&_n_u_l_l_)&{0:j}NAME 0 0 1 1 0 0 1 0 0 1 1 0 0 1 0 1 0 0 NO-TRACE-STRING 0 2 1 0 NO-TRACE-STRING 0 3 2 0 NO-TRACE-STRING 0 4 3 0 NO-TRACE-STRING 0 1 4 0 NO-TRACE-STRING 0 2 5 0 NO-TRACE-STRING 0 3 6 0 NO-TRACE-STRING 0 4 0 0 NO-TRACE-STRING 0 1 1 0 NO-TRACE-STRING 0 2 2 0 NO-TRACE-STRING 0 3 3 0 NO-TRACE-STRING 0 4 4 0 NO-TRACE-STRING 0 1 5 0 NO-TRACE-STRING 0 2 6 0 NO-TRACE-STRING 0 3 0 0 NO-TRACE-STRING 0 4 1 0 NO-TRACE-STRING 0 1 51 15 0 3 .EQN 26 1 35 0 {0:SA}NAME:(2)/((2)^({0:n}NAME)) .EQN 0 10 36 0 ({0:f}NAME)[({0:j}NAME):{0:mod}NAME(({0:mc}NAME)[({0:j}NAME),{0:SA}NAME) .EQN 0 15 37 0 ({0:qlevel}NAME)[({0:j}NAME):({0:mc}NAME)[({0:j}NAME)-({0:f}NAME)[({0:j}NAME) .EQN 7 -26 38 0 ({0:qlevel}NAME)[({0:j}NAME):{0:if}NAME(({0:f}NAME)[({0:j}NAME)ò({0:SA}NAME)/(2),({0:qlevel}NAME)[({0:j}NAME)+{0:SA}NAME,({0:qlevel}NAME)[({0:j}NAME)) .EQN 7 0 39 0 ({0:qlevel}NAME)[({0:j}NAME):{0:if}NAME(({0:f}NAME)[({0:j}NAME)ó-(({0:SA}NAME)/(2)),({0:qlevel}NAME)[({0:j}NAME)-{0:SA}NAME,({0:qlevel}NAME)[({0:j}NAME)) .EQN 7 0 40 0 ({0:qn}NAME)[({0:j}NAME):(({0:qlevel}NAME)[({0:j}NAME))/({0:SA}NAME) .EQN 6 0 41 0 ({0:qn}NAME)[({0:j}NAME):{0:if}NAME(({0:qn}NAME)[({0:j}NAME)>((2)^({0:n}NAME-1)-1),(2)^({0:n}NAME-1)-1,({0:qn}NAME)[({0:j}NAME)) .EQN 5 -1 42 0 ({0:qlevel}NAME)[({0:j}NAME):{0:SA}NAME*({0:qn}NAME)[({0:j}NAME) .EQN 5 0 43 0 ({0:qx}NAME)[({0:j}NAME):{0:if}NAME(({0:m}NAME)[({0:j}NAME)ò0,({0:mp}NAME)/({0:mu}NAME)*({0:exp}NAME(({0:qlevel}NAME)[({0:j}NAME)*{0:ln}NAME(1+{0:mu}NAME))-1),-(({0:mp}NAME)/({0:mu}NAME))*({0:exp}NAME(-({0:qlevel}NAME)[({0:j}NAME)*{0:ln}NAME(1+{0:mu}NAME) )-1)) .EQN 9 0 44 0 ({0:qn}NAME)[({0:j}NAME):{0:if}NAME(({0:qn}NAME)[({0:j}NAME)<(-(2)^({0:n}NAME-1)+1),-(2)^({0:n}NAME-1)+1,({0:qn}NAME)[({0:j}NAME)) .EQN 7 0 45 0 ({0:ec}NAME)[({0:j}NAME):({0:m}NAME)[({0:j}NAME)-({0:qx}NAME)[({0:j}NAME) .EQN 2 0 46 0 &&(_n_u_l_l_&_n_u_l_l_)&({0:ec}NAME)[({0:j}NAME)@&&(_n_u_l_l_&_n_u_l_l_)&{0:j}NAME 0 0 1 1 0 0 1 0 0 1 1 0 0 1 0 1 0 0 NO-TRACE-STRING 0 2 1 0 NO-TRACE-STRING 0 3 2 0 NO-TRACE-STRING 0 4 3 0 NO-TRACE-STRING 0 1 4 0 NO-TRACE-STRING 0 2 5 0 NO-TRACE-STRING 0 3 6 0 NO-TRACE-STRING 0 4 0 0 NO-TRACE-STRING 0 1 1 0 NO-TRACE-STRING 0 2 2 0 NO-TRACE-STRING 0 3 3 0 NO-TRACE-STRING 0 4 4 0 NO-TRACE-STRING 0 1 5 0 NO-TRACE-STRING 0 2 6 0 NO-TRACE-STRING 0 3 0 0 NO-TRACE-STRING 0 4 1 0 NO-TRACE-STRING 0 1 56 15 0 3 .EQN 28 0 47 0 ({0:sqec}NAME)[({0:j}NAME):({0:ec}NAME)[({0:j}NAME)*({0:ec}NAME)[({0:j}NAME) .EQN 7 0 48 0 {0:msec}NAME:((1)/({0:norun}NAME))*{0:j}NAME$({0:sqec}NAME)[({0:j}NAME) .EQN 7 0 49 0 {0:mssc}NAME:((1)/({0:norun}NAME))*{0:j}NAME$({0:mc}NAME)[({0:j}NAME)*({0:mc}NAME)[({0:j}NAME) .EQN 0 29 50 0 {0:msec}NAME={0}?_n_u_l_l_ .EQN 6 -28 51 0 {0:SNRoc}NAME:({0:mss}NAME)/({0:msec}NAME) .TXT 1 16 52 0 Cg a45.375000,55.000000,65 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {SNRoc is the signal to quantization noise ratio with compandor}} } .EQN 6 -16 53 0 {0:dBc}NAME:10*{0:log}NAME({0:SNRoc}NAME) .TXT 0 18 54 0 Cg a47.375000,53.000000,69 {\rtf1\ansi \deff0 {\fonttbl {\f0\fnil Arial;} } {\plain {dBc is the signal to quantization noise ratio with compandor in dB}} } .EQN 6 -18 55 0 {0:SNRoc}NAME={0}?_n_u_l_l_ .EQN 4 0 56 0 {0:dBc}NAME={0}?_n_u_l_l_