Page 217 - Applied Numerical Methods Using MATLAB
P. 217

206    NONLINEAR EQUATIONS
                     2
                         2
                (g) x + y − 2z = 6
                              3
                     2
                    x − 2y + z = 3                                      (P4.8.7)
                                2
                            2
                    2xz − 3y − z =−27
            4.9 Newton Method for a System of Nonlinear Equations with Varying Para-
                meter(s)
                In order to find the average modulation order x i for each userofan OFDM
                (orthogonal frequency division multiplex) system that has N(128) subcha-
                nnels to assign to each of the four users in the environment of noise power
                N 0 and the bit error rate (probability of bit error) P e , a communication
                system expert, Mi-hyun, formulated the problem into the system of five
                nonlinear equations as follows:

                                          N 0     −1      2
                 f i (x) = (2 (x i ln 2 − 1) + 1)  2(erfc (P e /2)) − λ = 0  (P4.9.1)
                          x i
                                           3
                          for i = 1, 2, 3, 4
                          4
                            a i

                 f 5 (x) =    − N = 0                                   (P4.9.2)
                            x i
                         i=1
                          where N = 128 and a i is the data rate of each user
                         −1
                where erfc (x) is the inverse function of the complementary error function
                            2  	  ∞  −t  2     2  	  x  −t  2
                  erfc(x) = √      e  dt = 1 − √     e   dt = 1 − erf(x) (P4.9.3)
                             π  x               π  0
                and defined as the MATLAB built-in function ‘erfcinv()’. She defined
                the mismatching error (vector) function as below and save it in the M-file
                named “fp_bits.m”.


                function y = fp_bits(x,a,Pe)
                %x(i),i = 1:4 correspond to the modulation order of each user
                %x(5) corresponds to the Lagrange multiplier (Lambda)
                if nargin < 3, Pe = 1e-4;
                  if nargin < 2, a = [64 64 64 64]; end
                end
                N = 128; N0 = 1;
                x14 = x(1:4);
                y = (2.^x14.*(log(2)*x14 - 1)+1)*N0/3*2*erfcinv(Pe/2).^2 - x(5);
                y(5) = sum(a./x14) - N;


                Compose a program which solves the above system of nonlinear equations
                                      −4
                (with N 0 = 1and P e = 10 ) to get the modulation order x i of each user
   212   213   214   215   216   217   218   219   220   221   222