Int ern at i onal  Journ al of  P ower E le ctr on i cs a n d  Drive  S ystem   (I J PE D S )   Vo l.   11 ,  No.   3 ,  Septem be r 2020 , pp.  1153 ~ 116 4   IS S N:  20 88 - 8694 ,  DOI: 10 .11 591/ ij peds . v11.i 3 . pp1153 - 116 4          1153       Journ al h om e page :  http: // ij pe ds .i aescore.c om   Review  of  f ast s quar e roo t calcul ation me t hods f or  fi xed poi nt  microco ntroll er - based c ont ro l  sys tems of powe r el ec t ro nics       An t on  Di anov 1 ,  Aleksey   Anuchi n 2   1   Digital  Appl iance s Business,   Samsung Ele c tron ic s,  R epubl i c  of   Korea   2   El e ct ri ca l   Driv es  Depa rt me n t,  Mos cow  Pow er  Engi ne eri ng  I nstit ute,  Russ ia       Art ic le  In f o     ABSTR A CT   Art ic le  history:   Re cei ved   Sep   23 , 201 9   Re vised  Jan   9 , 20 20   Accepte d  Fe b   16 ,  2020       Square   root   c alculation  is  a   wi del y  used   t ask  i n  real - t im e   con t rol  sys te ms   espe ciall y  in  th ose,   which  control  power  elec tr onic s:  mot ors  dr ive s,  power   conve rt ers,   pow er  fa c tor   cor r ectors,  e tc.  At  th e  sam e  t im e   c a lc ul at ion   of  square   roots  is  a  bottle - n ec k  in   the   op ti m izati o n  of  cod e  ex ecution  t im e .   Ta king   in to  acc ount  tha t   for   m a ny  app li c at ions   appr oximate  ca l cul a ti on   of   a   square   roo t  is  e nough,   ca l culation  time   c an   be   dec re a sed   with   t he  pr ic e   of   pre ci sion  of  calc ula ti on .   Th is  pap er  analyses  exi st ing  methods  for  fast  square   root  ca l culati on ,   which   ca n   be   i mpl ement ed  fo r  fixe d   point  m ic r ocont rollers.   It  discusses  a lgo rit hms’  pros  and   cons,   analyses  ca l cul a ti on  err or s  and  giv es  some  rec o mmen dat ions  on  th ei r   use.   Th e  pap er   al so  proposes  an  origi n al   me thod   for   fast   square   root   c al cu la t ion,  whic h  does   not   use   har dwar e   ac c el e ration  and   the r efo re ,   is  s uit able  fo r  i mpleme n ta t ion  at   a   var i et y   of  mode rn  Digi ta l   Signal   Proce ss ors,  which  h ave   high - spe e d  har dware   mul ti p li ers ,   bu t   do  not   hav e   eff e ct iv e  d ivi de rs.  T he  ma xi mum  re l at iv e  err or  of  the   proposed   me thod  is  3. 36%   for  calc ul ation  without   div ision,  and  c an  be   dec re ase d  to  0 . 055%  using  o ne  divi sion  op era t ion.   Fina ll y ,   the   most   promi sing  m ethods   are   co m par ed  and  res ult s  of  th ei r  per forma n ce  com par isons a re   depi c te d  in ta bl e s.   Ke yw or d s :   Appro ximate  c ompu ti ng   Appro ximati on  algorit hm s   New t on meth od   Numerical  met hods   Roo t  mean  squ are   This   is an  open   acc ess arti cl e   un der  the  CC  BY - SA   l ic ense .     Corres pond in g  Aut h or :   An t on D ia nov,    Digital  appli an ces b us ine ss, S amsu ng Elec tr on ic s ,    129, Sam sun gro,   Y oungto ng - gu, Su won, G oe nggi - do, 1 6677, Re public  of   Korea.     Emai l:   ant on . dianov @gmai l.com         1.   INTROD U CTION   M ode rn   c ontr ol  sy ste m s  of  powe r  el ect ronics  ha ve  e xtend e d  functi on al it y  and   la r ge   cod e  t o  be   execu te d.  At  t he  sa me  ti me  t he  mo st  of   ma ss  pr oduce d  de vices  a re  s ubje ct   for  c os t  op ti miza ti on ,  the refor e   dev el op e rs  fr e qu e ntly  sel ect   cheap  micr oc ontr ollers,  w hic h  are   not  powe rful.  T he  bu l k  of   t he  c od e   inc lud in g  math  f unct ions   and  m od el   of   con t ro l  ob je ct s   are  r un  eve r y  samplin g  per i od  of  the   syst em,  w hic h  is  ty pical ly  equ al   t o  m odul at ion   per i od.  T he  m odulati on  per i od   of  the   majority   of  power   el ect r onic s   co ntro l  sy ste ms  li es  in  the  inter val   of   4   -   20   kHz,   wh il e  ope rati ng   fr e quenc y  of   t he  cost - ef f ect ive  microc ontr oller  bel ong  to  the   range   of  40   -   80   MHz,   wh ic h  giv e s  2,0 00 - 20, 000  proce sso r   c ycles  pe r  mod ulati on  per i od.  High   powe r  dev ic es  operat e  at   lowe r  m odulati on  f re quencies,  wh il e  l ow e r  power  el ect ronics  an d  dev ic es  with  l ow e r   inducta nces ,  wh ic h  a re   wi dely   use d  in   home  a ppli an ces,  a utomoti ve  a nd  i ndus t ry,  operate  at   hi gh e r   modu la ti on  f re qu e ncies.  The  pr ic e  of   high  powe r  el ect ron ic s  is  al so   high,  s o  inc rease  of   mic roco ntr ol le r’ s   cost  in   1   -   2   $  do e s  no t  im pa ct   sign i ficantl y  the  t otal  pri ce  of  dev ic e,   bu t   the  c os t  of  th e  low  power  unit s  is   low,   a nd  the  pressu re  form  c ompeti tors  ma ke  eve r y  cent  sign ific a nt.  S o  dev el opers  of   powe r  el ect ron ic s  pu t   Evaluation Warning : The document was created with Spire.PDF for Python.
                          IS S N :   2088 - 8 694   In t J   P ow  Ele c  &  D ri   S ys t,   V ol .  11 , N o.   3 ,  Se ptembe r  2020   :    11 53   –   116 4   1154   cheap  Digital   Sign al   P r ocess or s   ( DSP)   in  t heir  so l ution s   and  the n  t ry  to   opti mize   s of t war e   to   be   abl e  r un  in   the sele ct ed D SP.   O ne of  t he mai n  mil est one s in  t he way  of  op ti miza ti on is  squar e  ro ot calc ulati on   r ou ti ne .   Square   r oot  operati on  is  fr e quently   us e d  i n  ma ny  c on t ro l  sy ste ms   of   po wer  el ect ronic s  an d  di gital   sign al   processi ng   al gorithm s.   Tasks  with  s quare  r oo ts  ca n  be  div ide d  int o  tw o  groups .  Tasks  from  t he   first  gro up   a re  exec uted  e very  sam pling   per i od  an d  proce ss  ne wl y  sam pled  data.  Tasks  from  t he   second  gro up  are   execu te d  ra rely  ( with  a  fr e qu ency   le ss  tha n  120   Hz ),   w he n  measu reme nt  resu lt s  are  nee ded   a nd  proces s  data   from   m ulti ple  samples.   Fi rst  gro up  incl ud es   volt age   an d  c urren t   vect or  t ran s f or mati ons   an d  nor mali zat ion s,   models  of  c ontrol   obje ct s,   ob serv e rs,  et c.   S econ d  gr oup  inclu des   cal cul at ion   of  R oot  M ea n  Square s  (RM S )   and  Total   Harmo nic  Disto rtion   (T HD),  le a st  sq ua res  bas ed  al gorith ms,   et c.  Squa re  r oo t  operati on  is  al s o  intensivel y  us e d  i n  el ect rical   dr i ves,  w he re  i t  is  in volve d  into   m otor  models  cal c ulati on,   M axim um  Torq ue   Per  Ampe re  ( M TP A)  c on t rol   [ 1 ],  M a ximum  T orq ue  Per   V oltage   ( M T PV )   c on t ro l,   f ie ld  wea ke ning  [ 2 ],   var i ou s  obse rvers, Po wer Fac tor  C orrecto rs (PFC) , etc.   Au t hors   of  t his  pa per faced   w it h  the   same   pr ob le m , which  aro se ,  w hen 8 0   MHz DSP wa s  s ub sti tuted   with  64   MHz  DS P   a nd  s of t war e   op e rati ng  at   16   kHz   f ai le d  due   to   t he  M C U   over load.  An al ys is   of   the   so ft war e  rev ea le d  seve ral  bott le - neck s ,  one  of   wh ic h  was  s qu a re  r oot  cal culat ion   routine   cal le d  sever al   ti mes  per  sam pling  pe rio d  a nd   t wo  ti mes  in  the   60   Hz  inte rrup t.   A t  the  same  ti me   impleme ntati on o f  t he  s quare   roo t   cal culat io n  r ou ti ne   us e d  di git - by - dig it   met hod,  w hich   was   no t  perfect   a nd   t ook  a  l ot  of   process or  c ycles.  Ther e f or e,   aut hors  c oncent rated thei r  ef f or ts  on the  opti miza ti on   of ti me used  for  s quare   root cal culat io n.   Let 's  form ulate   a  pro blem  f or   t he  disc us si on.  F or   a  gi ve n  num be r  S,   it   is  necessar y  to  fin d  the   numb e r X s o  t hat:     √ ≈ .   ( 1 )     M ode rn  D SPs   for  c hea p  c on t ro l  s ys te ms   of  powe r  el ect r onic s  are  t yp ic al ly  16  or  32 - bit  with  10  or  12 - bit  AD C.   Ther e f or e,   maj or it y  of  va riab le s  in  co nt r ol  al gorithms  a re   16 - bit  an d  int erme diate   res ul ts  of   cal culat ion s a r e   32 - bit   va riabl es .  Co ns e quent ly,   X  is e xpect ed  to  b e  16 - bit  and S is  expect ed  to  b e  32 - bit.   The   over w helming  maj or it y  of  D SPs   are   de sign e d  f or  fas t  mu lt ipli cat io n  with   ad diti on,   but  has   n o  hard war e  acc el erati on  f or  the   div isi on  opera ti on .  C onseq ue ntly,  im pleme nt at ion   of  t he  div isi on  op e rati on  i s   slow   a nd  ty pical ly  ta kes  as  man y  pr ocess or  cycles  as  nu mb e r  of  bits  of  the  re su lt .  F or   a  16 - bit  res ult,  one  div isi on   operat ion  ta kes   a bout   16  c ycl es   an d  si gnific antly   slo ws   do wn  cal culat ion s.   T hu s ,   it   is  desir ed  t o  minimi ze the  num ber o f divisi on s  in  the s qua re ro ot calc ulat ion  al gorithm .   In   s uc h  a  wa y  our  pu rpose  i s  to  acce le rate   the  square  root  cal culat ion   with  the  pr ic e  of   decr ea sed   tolerance .  As   sq ua re   r oo t   op erati on  is  t yp i cal ly  use d  f or  the  processi ng  of  meas ur e d  sign al s   co rru pted  by   no ise ,  cal c ulati on  e rror s   s houl d  be   simi la r  t o  t he   meas ur i ng  e rro rs,  w hic h  a re   ty pical ly   0.5   –   5% .   H oweve r  so me   cases  de man d  higher   preci sion,  s o  cal culat ion  meth o ds   mu st   be   abl e  to  decre ase  e rror s   by   r unning  one   to  tw o  a ddit ion al   it erati ons.  Ther e f or e,   the   cal culat ion  m et hod  m us t  qu ic kly   cal c ulate   the  s quare   r oot  with   error s   in   the   ra ng e   of  0.5   –   5%   a nd  m us t  ha ve  fast  c onve rg e nce   to   be   a ble  to   decr ea se   er rors   in   one   to  tw o  add it io nal it era ti on s.   Ba sic al ly,  the   al gorithms   f or  sq ua re   r oo t   ev al uation  can   be   di vid e d  i nto  two  main   groups:  it erati ve   methods   an d  appr ox imat io n  by  real  f un ct ion s .  Ite rati ve   meth ods  c omprise  t hr ee   cl asses:   direct  m et hods ,   al gorithms  bas ed  on th e  Ne wton - Ra phs on fo rm ula and  nor mali zat ion  tech niques  [ 3 ].   Au t hors  of  [ 4 – 13 ]  repor te d   ha rdwar e   implem entat ion  of  no n - it erati ve  met hods.  T hese  al gorith ms  ar e  mainly   de sig ne d  for   lo w - reso l ution data (8 - bi t), b ut oper at e  ex tremel y  fast and  ca n  be   us e d  for   pre - proce ssing   of  sa mp le d  da ta   Su ch  met hods   nee d  ad diti on al   hardware  an d  ca nnot  be  us e d  in   gen e ral  D SP - base d  al gorithms.   A ut hors of [ 14 ]   use d   par al le l cal culat ion  i n rep ort ed  s pee d  inc r ease i n mo re t ha n 38%.   The  un c omm on  a ppro ac h  for   square  r oo t  ca lc ulati on   was  r eported  i n  [ 16 ] .  A uthor s  pr opos e d  to  us e   it erati ve  exec ut ion   of  the   no nlinear  I nf init e   Im pu lse   Re s ponse   ( II R)   filt er  to  ob ta i n  th e  square  root  of   t he  giv e n  num ber .   This   meth od  do e s  no t   in vo l ve  div isi on   op erati on,  bu t   in te ns ively   use s   m ulti plica ti on   with   add it io n operat ion s .   This  pap e r  is  div ide d  i nto   fi ve  sect io ns .   I n  Sect ion  I I  the   auth ors  e xp la i n  e xisti ng   met hods   f or   t he  fixe d   po i nt  s qu are  root  cal c ulati on ,   an d  disc us s   their   pr os   and  c on s .  Sect ion  I II  pr opos e s  a  ne w  meth od  a nd   discusse s  it s   to le ran ce.   E xperi mental   res ults  and  perf or ma nc e  of  the   m os t   promisin g  met hods  are   giv e n  in  t he  Sect ion   I V.   Se ct ion   V  c on ta i ns  c oncl us io ns.       2.   EXISTI NG M ET HOD S   The  a uthors  of  [ 3 ]  gi ve  cl ass ific at ion   an d  e xtensi ve  re view  of  the  gen e r al   sq ua re  r oo t  cal culat ion  methods ,  but  not  al l  of   t hem  are  s uitable   f or  fixe d  po i nt  implementa ti on.  Pape r  [ 3 ]   can  be  e xten ded   wi th  [ 15 ]   and  [ 17 ], w hic h revie w   a nd a nalyse   only  f ix ed po i nt alg or it hm s .   Evaluation Warning : The document was created with Spire.PDF for Python.
In t J  P ow Elec   & Dri S ys t   IS S N: 20 88 - 8 694       Revi ew  o f f as t  sq uare  root c al culatio n meth ods f or  fi xed  poin t micr oc on tr ol le r - based  cont ro l  …   ( A.   Dian ov)   1155   Ther e   a re   seve ral  s quare   r oot  cal culat io ns  methods ,  w hich  can   be   co ns i der e d  to   be  fa st.  S om e   of   them  util iz e  ha r dware   featu r es  of  pr ocess or  c or e   a nd  ca n  be   im pleme nted  i n  t he   li mit ed  num ber  of  DS Ps ,  wh il e  oth e rs  a re  gen e ral  met hods ,   w hic h  do  no t  de pend  on  pr ocess or   c or e .  T his  pap e r  re view s  the   mo s t   pros pecti ve me thods a nd  discuss es t heir p ros and c ons.       2.1.    Digit - by - digit c alcula ti on   This  met hod  f or   squa re  r oot  cal culat ion  at   fixe d  point  D SPs,   is   the  most   popula r  a s  i t  is  easy  t o  unde rstan d  an d  impleme nt.  Desp it e  relat iv el y  slow   c onve rg e nce,  man y  eng i neer s  sti ll   pay   at te ntio n  to  thi s   method,   oft en  impleme nting   i t   in  hard war e  [ 18 ]  a nd   s oft wa re  [ 19 ].   This  m et hod  ca n  be  c on si der e d  as  a  basi c   method a nd ca n be  us e d  f or t he  e valuati on  of  oth er  meth od s.   F or  be tt er  un de rstan ding  th e  al gorithm  im pl ementat io n  in   bin a ry  syst em,   le t’s  co ns i d er  it s  op e rati on  with  decimal   num ber s , whic h i s o fte n use d  f or ma nual  calc ul at ion  of s quar e r oo ts  with  pa per an d pe ncil.   Suppose  X k   is t he k - t h digit  of  X ,  so :       = ⋅ 1 0 + − 1 ⋅ 1 0 − 1 + . . . + 1 ⋅ 10 + 0   ( 2 )     The  m os t  sig ni ficant  di git  X k   is  the  first  ap pr ox imat io n  of   t he  s qu a re  r oot  X  an d  ca n  be  e asi ly  fou nd  as the  highest i ntege r wh ic h  s at isfie s:     2 ⋅ 1 0 2 ≤   ( 3 )     The ne xt d i git  X k - 1   of s qu a re  r oo t  X   ca n be fo und usi ng the  f ollow i ng ine qual it y:     ≥ ( ⋅ 1 0 + − 1 ⋅ 1 0 − 1 ) 2   ( 4 )     wh ic h  tra nsfo r ms int o:     − 2 ⋅ 1 0 2 ≥ − 1 ⋅ 1 0 2 ( − 1 ) ( 20 ⋅ + − 1 )   ( 5 )     Simi la rly,  t he next  dig it  ca n be calc ulate d  a s:     ( ) ( ) ( ) 2 2 2 2 1 2 2 2 1 1 4 2 10 10 20 10 10 20 10 − − − − − − − + + + + − k d i g i t N e w k d i g i t N e w k s t e p p r e v i o u s at R o o t k k k s u b t r a h e n d p a i r N e x t k k k s u b t r a h e n d p a i r L e f t m o s t k X X X X X X X X S   ( 6 )     This  a ppro ac h  can  be  us e d  recursivel y  du rin g  the  ne xt  ste ps   to  obta in   the  ne cessar y  num ber   of  dig it s.   Since   e very   di git  of  th e  re su lt   X   is  m ulti plied  by  10 2k,  it ’ s  ea sie r   to  sepa rate  S   in to  pairs   of  dig i ts  an d  cal culat e  X k  f or  e very   pai r.  If  S   c on ta in s  odd  nu mb e r   of   di gits,   a  0  m us t  be   a dd e d  to  t he   le ft.   T he reafter ,   every  pair  is  combine d wit h p r evio us  ste p re mainde r  a nd  ne w digit  sati sf yi ng :     ≥ ( 20 ⋅ + − 1 ) − 1   ( 7 )     mu st  be fo und.   Let ’s  denote  r oo t  cal c ulate d  at   the  cu rr e nt  s te p  as  “R ”  a nd   remai nd e r  of  th e  init ia l  val ue   as  “R em”.     R   is  init ia l iz ed  with  ze r o,   and   e ve ry   it er at ion   of  the  a lgorit hm   cal cu la te s  the  nex t   dig it   of  the  root.     The flo wch a rt  of the al gorith m is s how n  in   Figure   1 :   Let ’s  il lustrate   this al gorith m  with the  foll ow ing  e xam ple: T he  s quare  r oo t  of 54 756  is:     So  a nswer  is  234.     This   meth od  c an   be   e xten ded  to   bin a ry  num ber s .  A   bin a ry  sy ste m   is   simp le r  for   cal culat ion  becau s e   the  great est   num ber  can   be   fou nd  just  by   com pa rin g  num ber s .  T he  only  dif fer e nce   is  that  c onditi on   ( 7 )  tran s forms  into :     Evaluation Warning : The document was created with Spire.PDF for Python.
                          IS S N :   2088 - 8 694   In t J   P ow  Ele c  &  D ri   S ys t,   V ol .  11 , N o.   3 ,  Se ptembe r  2020   :    11 53   –   116 4   1156       ≥ ( 10 0 ⋅ + − 1 ) − 1 7   ( 8 )     because  the  r a dix   num ber ch ang e d from  10 t o  2.   The ne xt ex a m ple s hows r oo t  cal culat ion  i n  t he bina ry syst em.           So ,   res ult i s  101111b   =   47d         Figure  1 .  Flo w char t  of  di git - by - dig it  met hod       This  meth od  does  not  use   sp e ci fic  hardw a re  and   it s  exec uti on   ti me  do es  not  sign i ficantl y  dep e nd  on   the  process or  typ e.  T he  a dvantages  of   t his  method  are  preci se  res ults  ( LSB  or   half  L SB  if  remain de r  is   analyse d),  sim ple  impleme nt at ion   a nd   a bs e nce  of   div isi on .  It  cal culat es  r oo t  dig it   by  di git,  sta rtin g  f rom  the   mo st  si gn i fic ant,  s o  cal c ulati on s   ca n  be  sto p pe d  be fore  processin g  of  f ul l  numb e r  S,  if   acce ptab le   t oleran ce     is reache d.   Howe ver,  the  mo st  si gn ific a nt  disa dv a nta ge   of  the  e xp la i ned  meth od  is   cal culat ion   ti me.  Desp it e  this,  dig it - by - di git  method  is  f reque ntly  us e d  in  the  co ntr ol  sy ste ms,  w her e the  process or  is  no t hig hly   lo aded.   It  was  al so  p r opose d  f or  impl ementat io n  in h ar dware  a nd   t he  aut hors  of   [ 19 ]  en ha nce d  this  idea  to  cal c ulati on  of o t her   f un ct i on s   a nd imple mented  on FP GA.     2.2.     P olynom ial approxi m ati on   Square  r oo t  functi on  is  di ff ic ult  for  a ppr ox i mati on   beca use   it s  der i vative   rap i dly   c ha nges  cl os e  t o  zero,  w hic h  re su lt s  in  high  a ppr ox imat io n  error s .  T her e f ore,  s quare  r oo t   can  be  s ucces sfu ll y  ap p roxi mate d  on l y  at  the  li mit ed  inter val.     ( ) ( ) ( ) ( ) 2325 1856 176 129 9 2 4 5 5 23 0 1856 4 4 23 0 1856 1856 4 4 2 0 147 3 3 2 0 129 147 3 05 04 05 56 47 05 + + − + + − − 2 2 be c a u s e   4   is di g i t      t h i r d T h e 2 2 be c a u s e   3   is di g i t     s e c on d   T h e 2 be c a u s e   2   is di g i t   f i r s t     T h e n u m be r G i v e n 2   ( ) ( ) ( ) ( ) ( ) ( ) b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b 1 0 1 1 1 0 1 1 1 1 0 1 1 1 00 1 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 0 0 1 0 0 1 1 1 0 1 1 00 0 1 0 1 1 0 1 1 0 0 0 1 0 0 1 0 0 1 1 0 1 1 101 00 0 1 0 1 0 1 1 0 0 1 1 0 1 0 0 1 0 1 1 10 00 0 1 0 0 1 1 0 0 1 0 100 1 1 1 00 000 100 10 01 01 10 01 00 10 10 00 10 1 0 1 1 1 0 1 1 0 1 1 0 1 10101 1001 101 + − + − + − + − + − − 1 bec a u s e   1   is di g i t   S i x t h   1 bec a u s e   1   is di g i t   F i f t h   1 bec a u s e   1   is di g i t   F ou r t h   1 bec a u s e   1   is di g i t     T h i r d 1 bec a u s e   0   is di g i t     S e c on d bec a u s e   1   is di g i t   F i r s t   2209 n u m ber   G i v e n d   S e p a r a t e   S   i n t o   p a i r   o f   d i g i t s .  A d d   “ 0 ”   t   t h e   l e f t   i f   n e c e s s a r y R  =  0 ; R e m   =  L e f t m o s t   p a i r ; F i n d   g r e a t e s t   d i g i t   X   s u c h   t h a t   X · ( 20 · R  +  X )  ≤  R e m A l l   p a i r s p r o c e s s e d ? R e m   =  R e m · 1 0 0   +  N e x t   p a i r ; R  =  10 · R  +  X ; B e g i n E n d Evaluation Warning : The document was created with Spire.PDF for Python.
In t J  P ow Elec   & Dri S ys t   IS S N: 20 88 - 8 694       Revi ew  o f f as t  sq uare  root c al culatio n meth ods f or  fi xed  poin t micr oc on tr ol le r - based  cont ro l  …   ( A.   Dian ov)   1157   Po ly nomial   a ppr oximat ion  is pro po se d  i n  [ 20 ]   an d  recomm end e d  by  e ng i ne e rs  from  A nalog  De vices   to  us e  with   th ei r  D SPs .  T he y  pro pose  to   appr ox imat e   s qu a re  r oo t   f unct ion   f(x)   =   x0 .5  at   the   inter val  of  [ 0.5 .. 1] ,  w it h fi fth orde r po l ynom ia l:       0 . 2 0 7 5 8 0 6 1 . 4 5 4 8 9 5 x 1 . 3 4 4 9 1 x 1 . 1 0 6 8 1 2 x 0 . 5 3 6 4 9 9 - x 0 . 1 1 2 1 2 1 6 x 2 3 4 5 + + − + x   ( 9 )     Since  a ppr ox i mati ng  poly no mial   giv es   a ppropr ia te   res ults  in  t he  li mit ed  interval,   the   in it ia l  nu m ber   mu st   be   scal e d  to   fall   i ns ide   i t.  A fter   cal cula ti on   of  t he  squ are  root   of  t he   scal ed  num ber,   the   re su lt in g  va lue   mu st  be   m ulti pl ie d  by   the   squ are  root  of  the   scal ing  value   to  ob ta in   the   c orrec t  a ns w er.   The  a ut hors  of   [ 20 ]  publishe d  as se mb le r  code  of t he pr opos e d m et hod  a nd clai med maxi mum  ex ec ution t i m e of  75 cy cl es.   T his  esse ntial   scal ing   operati on  is  not  sim pl e  for  ma ny  D SPs  a nd  ta kes   ti me,  howe ve r   proces sors  from   A nal og  Dev ic es   hav e   hard war e   un it s   cal le d  an   e xp on e nt   detect or,   w hich   cal c ul at es  the   am ount   of   the   redu nd a nt  si gn  bits  a nd  s hifts   init ia l  num bers,  s o  cal c ulati on  is   acce le rate d.  Mo reover ,  s ign  operati on  of  the   expo nen t  detect or   li mit s  the  r ang e  of   i nput  value  by   3276 8,   w hic h  is  res tric ti ng   in  m ost   cases.  Evalua ti on   of   the  hi gh   pow e r   po l ynomi al   increases  cal cula ti on   er r or   a nd  impact s  tolera nce  of   t he  res ul t.  So   this  method  i s   no t  rec om me nded  for i mp le mentat io n.       2.3.     T ab le   approxi ma tion   Lo okup  ta ble - base d  meth ods   are  co mm on   f or   functi on  ap pro ximati on.  T hey   a re  relat iv el y  fast,  bu t   us e  a  l ot  of  me mory  t o  inc rea se  tolera nce.  B iparti te   an d  m u lt iparti te   method s   are  e xcell ent  exa mp le s  of  ta ble   lookups   an d  ar e  desc ribe d  in   [18].  A uthors  pro po se   inse rting  tw o  lo okup   ta bles  i nto  the   data   pat hs   a nd  us e   on e  table  for  t he  init ia l seeds,   wh il e a no t her  on e  s hould be   us e d  f or a dd i ng a  small  corre ct ing   va lue .   The  a ppr ox im at ion   e rror  ca n  al so  be   re du ced  by  inter po la ti on   bet wee n  ta ble  points   ( e.g .   li near),    bu t  it   increases   the  cal culat ion   ti me  an d  dim inishes  the  main  ad va ntage  of  the  meth od   -   s peed.  Th e  flo w chart   of   f un ct io n  a ppr oximat ion  w it h  va riable  se gm e nts   ta ble  a nd  li near  inter po la ti on  betwe en  po i nts  is  de picte d  in   Figure   2 .  I t i nd ic at es that cal culat ion  c onta in s one  div isi on,   wh ic h  si gn ific a ntly sl ow s  do w n  cal culat io n.     The  cal c ulati on  ti me  of  t he  f un ct io n  ap pro xi mate d  with  ta ble  ca n  be  sig nificantl y  decre ased,   if  t he  ta ble  co ns ist s   of  e qual   se gme nts  a nd  a   numb e r  of  th em  is  t o  the   powe r  of  tw o.  A   flo wc har t   of  the  corres p on ding  al gorithm  is   de picte d  i n  Fi gur e   3 .  It  in dicat es  that  cal c ulati on  wa s  sim plif ie d  a nd  di visio n  ha d  been excl u de d.     Table  ap pro xi mati on   perfect ly  w orks  for  t he  sm ooth  fun ct ion   wit h  sm oo t h  de rivati ve   and  outp uts  higher e r rors f or  t he fu nctio n wit h  ra pi dly  c ha ng i ng d e rivati ves.   A  t yp ic al   exam ple of  fun ct ion s, w hich  c an be  appr ox imat e d ea sil y,  is si ne  a nd  co sine.     As  sta te d  a bove ,  s qu a re   r oo t   is  not  eas y  f or  ap pro ximati on,   beca us e   it s  der i vative  rap i dly  cha nges   cl os e  t o  ze r o.  Ther e f or e,   vari able  ste p  ta bl e  ap pro ximati on  or  pr e - scal ing  m us t   be   use d.  F or  this   s pecific   reason,  Fig ure   3   c on ta in s tw o sca li ng   blo c ks .     On   t he  one  ha nd,  the  tole rance   of   this  meth od   mainly  de pe nds  on  the  siz e  of   the  ta ble  a nd   i n  some   cases  the   s iz e   is  unacce ptabl y  la r ge.  O n  the   oth e r  ha nd,  t his  met hod  nee ds  pre - scal ing  be fore  ta ble  is   r ead  a nd   after, w hich di minishes  it s m ai n  ad va ntage   -   cal culat ion sp eed.       2.4.     Newt on ’ s method   This  met hod  is   very  popula r   f or   nume rical   cal culat ion   beca us e  it   is  sim ple  an d  has  fast  c onve rg e nce.   It  can  be  su cce ssfu ll y  us e d  f or  the  a pproxim at ion   of  var io us  functi ons  a nd  cal culat io n  operati ons  [21].   Let ’s   consi der it s appli cat ion  t o  the  calc ulati on of  sq ua re  r oo ts.   Find i ng X,  wh i ch  is s quare  ro ot of  S is the  sa me as s olv i ng :       2 − = 0   ( 10 )     Accor ding to   New t on’s met hod, the  n e xt ste p  a ppr ox imat io n  xi+1   of the  fun ct io n r oo t i s:     + 1 = − ( ) ′ ( )   ( 11 )     wh e re  xi  is  root  ap pro ximati on   at   t he  cu rrent  ste p.   The  cal culat ion   pro cess  can  be  il lustrate d  by  drawin g  series  of  se ca nt  li nes   to  pa r abo la   as  s how n  i n  Fi gure   4 .   The   it erati ve   cal culat ion  is   sto pp e d,  wh e n  t he   necessa ry accu racy has  b ee n r eached:      Evaluation Warning : The document was created with Spire.PDF for Python.
                          IS S N :   2088 - 8 694   In t J   P ow  Ele c  &  D ri   S ys t,   V ol .  11 , N o.   3 ,  Se ptembe r  2020   :    11 53   –   116 4   1158         Figure  2 .  Flo w char t  of fu nction ap pro ximati on w it h  var ia ble segme nts table a nd li near i nter po la ti on  betwee n po i nts     Figure  3 .  Flo w char t  of s qu a re  roo t a ppr ox im at ion   with e qu al l y  se gm e nted  ta ble  with size  of 2 Tb lSize   and   li near  inte rpola ti on   betwee n p oin ts       | + 1 − | ≤   ( 12 )     Howe ver,  f or  s impler  cal c ulati on ,   the  it erati ve  process  ca n  be  li mit ed  to   f ixed  num ber   of  it erati on s .   Th us , t he fu nct ion   giv e n  i n ( 10 ) , usin g ( 11 )  tran s f or m s int o:     + 1 = − 2 − 2 = 1 2 ( + )   ( 13 )     This e qu at io n  i s also kno wn  a s the Bab yloni an  met hod [ 22 ] . I t h as qua dr at ic  co nver ge nce  and all ows   us   to   ca lc ulate   square  r oo t  w it h  low  num be r  of  op e rati ons .  H oweve r,   ea ch  it erati on  of  the  meth od  c onta ins   div isi on,  whic h  ta ke s a si gn i f ic ant am ount  of  process or ti me   Pr ope rly   sel ect ed  i niti al   value   can   sig nifica nt ly  acce le rate  c al culat ion ,   s o  an  i niti al   gu es s   x0  is   ve r y  importa nt.  W e   su ggest  t o  loca te  squar e  r oo t  by f i nd i ng  n , so that  square  roo t  belo ngs t o t he  inter val:     2 ≤ < 2 + 1   ( 14 )     This  ste p  ca n  be   easi ly  im ple mented   in   the  D SPs   a nd  pr ovides  a dv a ntag e   of u sin g  the pow e r  of  tw o,  th eref or e   div isi on   at   the   fir st  ste p  ca n  be  substi tuted   with  bit  s hift.   The n  t he  i niti al   valu e  ca n  be   sel ect ed   du rin g  t his   interval,  u si ng  any crit eria.  Typica l i niti al  v al ues  a re m i dd le   po i nt of t he  int erv al :     0 = 3 ⋅ 2 − 1   ( 15 )     wh ic h  is  th e  mo st  pro ba ble  num be r,  an d  val ue,  w hich  giv e s  symmet rica l  relat ive  er ror  at     interval  bor ders:       n x 2 3 4 0 =   ( 16 )   Using  ( 15 )  as a n  init ia l val ue a nd combi ning  w it h ( 13 ) resul ts:     1 = 1 2 ( 3 ⋅ 2 − 1 + 3 ⋅ 2 − 1 ) = 3 ⋅ 2 − 2 + 3 ⋅ 2   ( 17 )     wh e re  div isi on  can   be   substi tuted  by  the   bi t  sh ift.  H ow e ver,  the   f ollo wing  ste ps   i nvolv e  di vision  and  are   performe d  acc ordin g  t o  ( 13 ).     D e t e r m i n e   t a b l e   s e g m e n t ,  i . e .  d e f i n e   t a b l e   i n d e x   N ,  s o   t h a t S [ N ]  ≤  S   <  S [ N + 1 ] R e a d   d a t a   f r o m   t a b l e : X [ N ] ,  X [ N + 1 ] ,  S [ N ] ,  S [ N + 1 ] B e g i n E n d P e r f o r m   l i n e r   a p p r o x i m a t i o n : ( ) ( ) N S N S N S S N X N X N X X − + − − + + = 1 1   S c a l e   S   t o   b e   i n   t h e   r a n g e     [ 0 . 5 .. 1 ]. K   i s   e x p o n e n t   ( n u m b e r   o f   s h i f t e d   b i t s ) D e f i n e   t a b l e   i n d e x   N N   =  S   >>  ( 3 2   -   T b l S i z e ) R e a d   d a ta   f r o m   ta b le : X [ N ]  a n d   X [ N + 1 ] B e g i n E n d S c a l e   r e s u l t i n g   v a l u e : K X X 2 = P e r f o r m   l i n e r   a p p r o x i m a t i o n : ( ) ( ) ( ) Tb lS ize S N X N X N X X T b l S i z e  − − + + = 1 2 1 & Evaluation Warning : The document was created with Spire.PDF for Python.
In t J  P ow Elec   & Dri S ys t   IS S N: 20 88 - 8 694       Revi ew  o f f as t  sq uare  root c al culatio n meth ods f or  fi xed  poin t micr oc on tr ol le r - based  cont ro l  …   ( A.   Dian ov)   1159   Let ’s  cal culat e   the  er ror  for   every  it erati on  in  orde r  to   def i ne  the   num ber   of  re quire d  ste ps.     The rel at ive er ror  is  higher , w hen X l ie s at th e inter val’s  l ower  borde r: X= 2n.   Re la ti ve  error  of init ia l appr oxi mati on :       0 = 0 − 1 = 3 ⋅ 2 − 1 2 − 1 = 1 2   ( 18 )     First ste p ap prox imat io n:       1 = 3 ⋅ 2 − 2 + 2 2 3 ⋅ 2 = 9 ⋅ 2 − 2 + 2 3 = 13 ⋅ 2 12   ( 19 )     Re la ti ve  error  of the  first ste p ap pro ximati on:       1 = 1 − 1 = 13 ⋅ 2 12 ⋅ 2 − 1 = 1 12 ≈ 8 . 3%   ( 20 )     Seco nd step  appr oximat ion :       2 = 1 2 ( 13 ⋅ 2 12 + 12 ⋅ 2 2 13 ⋅ 2 ) = 313 ⋅ 2 312   ( 21 )     Re la ti ve  error  of the sec ond s te p  ap pro ximat ion :       2 = 2 − 1 = 313 ⋅ 2 312 ⋅ 2 − 1 = 1 312 ≈ 0 . 32%   ( 22 )     Thir d  ste p  a ppr ox imat io n:       3 = 1 2 ( 313 ⋅ 2 312 + 312 ⋅ 2 2 31 3 ⋅ 2 ) = 19531 3 ⋅ 2 19531 2   ( 23 )     Re la ti ve  error  of the t hird ste p  a ppr ox imat io n:     3 = 3 − 1 = 1 19531 2 ≈ 5 . 1 ⋅ 1 0 − 6   %   ( 24 )     This  t olera nc e  is  ty pical ly   suffici e nt,  a nd  s qu a re   r oot  cal culat io n  nee ds  th ree   it erati on s ,    wh ic h  in volve  on l y  tw o divisi on s .             Figure  4 .  G e ome tric al  inter pret at ion   of the   New t on’s met hod       2.5.     A  t w o - va ri ab le  iter at i ve  method   This  met hod  was  propose d  by   t he  a uthors  of   [ 23 ]  f or   one   of   t he  fi rst  co mputers.   It  is  app li cable  t o  the s qu a re  root  calc ulati on of  the num be r  S  s at isfying  0   <   S   <3,  s o  it  als o n eeds s cal in g o f  the initi al  num ber.   This  meth od  c al culat es  tw o  num ber s   a  a nd  c  at   eve r y  it era ti on ,   w her e   a  c onve rg es   to   s quare   r oot  of  S and c  con verges t o 0.   These  num ber s  are  i niti al iz ed  as:     Evaluation Warning : The document was created with Spire.PDF for Python.
                          IS S N :   2088 - 8 694   In t J   P ow  Ele c  &  D ri   S ys t,   V ol .  11 , N o.   3 ,  Se ptembe r  2020   :    11 53   –   116 4   1160   0 = ;     0 = − 1   ( 25 )     and at eve r y  it erati on the y  a re  updated  as:       + 1 = − 0 . 5 ⋅   + 1 = 0 . 25 ⋅ 2 ( − 3 )   ( 26 )     It sho uld   be n ot ed  that  for fast er calculat io n S can  b e  scale d t o  sat isf y 0.5   <   S   < 2.   The  ma xim um   relat ive  error  occurs  wh e n  S   =   2.   M axi mu m  relat ive  error s  for  eac h  cal culat io n    ste p  are:     0 = √ 2 − 1 ≈ 41 . 4% ;     1 = 1 √ 2 − 1 ≈ − 29%   2 = 5 4 √ 2 − 1 ≈ − 11 . 6% ;     3 ≈ − 1 . 94%   4 ≈ − 0 . 056%   ( 27 )     This  meth od,   a s  New t on’s   me thod,   ha s  quad rati c  co nver ge nce   an d  ty pical ly  3   –   4  it erati on s   of  ( 26 )  is suffici ent.  T his calc ulati on  method  does  not co ntain  di vision o per at io n and t ime d el ay s  in her e nt to  it .   The   pro blem   of  this   met hod  is  mu lt ipli cat ion  of  32 - bit  num ber s ,  w hich   is  t yp ic al ly   sl ow e r   tha n    16 - bit  num ber  mu lt ipli cat ion .   It  al s o  t runcat es  64 - bit  num be rs  t o  32 - bit,  pro duci ng  cal c ul at ion   e rror s ,  wh ic h  te nd  t o be acc umulat ed.         2.6.     G oldsc h mi dt ’s  a l go ri t hm   On e   m ore  i nt eresti ng  a nd  pros pecti ve   met hod  is  G old sc hm idt ’s   al gorithm.   Its  usual   descr i ption   ref le ct s  a  ha rdwar e   ori entat io n  with  diff ic ul ti es  of   i mp le m entat ion  in  s of tware,   ho wev e r  the   aut hor  of  [ 24 ]  su ggest s  a s of t war e - f rien dly   way of c omp uting ,  which   is  de scribe d belo w .   Let   y0   be  a s ui ta bly   good a pproxim at io n  to   S 1 , s uc h  as:       1 2 ≤ ⋅ 0 2 ≤ 3 2   ( 28 )     In it ia li ze var ia bles:       0 = ⋅ 0   ℎ 0 = 0 . 5 ⋅ 0   ( 29 )     And  t hen it erate as f ollo ws:       { − 1 = 0 . 5 − − 1 ⋅ ℎ − 1 = − 1 + − 1 ⋅ − 1 ℎ = ℎ − 1 + ℎ − 1 ⋅ − 1   ( 30 )     Ca lc ulati on   ca n  be  sto pped ,   w hen   ri  is  s uffici ently  lo w  or   a fter  fixed  num ber  of  it erati ons .   Ca lc ulate d  val ues  c onve rg e  to:      → ∞ = √    → ∞ 2 ℎ = 1 √   ( 31 )     The ma xim um  relat ive er ror o ccur s  whe n ,      0 = 1 √ 2 ⋅   ( 32 )     And maxim um rela ti ve  e rror s   for  eac h  cal c ulati on  ste ps  a re:       Evaluation Warning : The document was created with Spire.PDF for Python.
In t J  P ow Elec   & Dri S ys t   IS S N: 20 88 - 8 694       Revi ew  o f f as t  sq uare  root c al culatio n meth ods f or  fi xed  poin t micr oc on tr ol le r - based  cont ro l  …   ( A.   Dian ov)   1161   0 = 1 √ 2 − 1 ≈ − 29% ;     1 = 5 4 √ 2 − 1 ≈ − 11 . 6%   2 = 355 256 √ 2 − 1 ≈ − 1 . 94% ;     3 ≈ − 0 . 056%   ( 33 )     The  a uthor  of  [ 24 ]  pr ov es   that  Go l ds m it h’ s  al gorith m,  as  Ne wton’s  meth od   ha s  qu a drat ic   conve rg e nce,   bu t   has   a n  a dv antage   of   abse nce  of  div isi on  operati on.   T he  featu re  of  t he  al gorithm   i s  that  it   simult ane ou sl y  ca lc ulate s  square   r oo t  a nd  reciprocal   s qu are  r oot.  How ever,  if  one  of  these   val ues   is  not  need e d, the  co r respo nd i ng equ at ion  in  ( 30 ) c a n be e xclu ded.   Eq uations  in  ( 30 )  ca n  be  ef fe ct ively  implem ented  for  la r ge   num ber s  of  D SPs,   w hich  ha v e  hardw a re   un it s  f or  m ulti plica ti on   with   add it io n.  H ow ever,  it   s houl d  be   note d  that   var ia bles  in   ( 30 )   ha ve   sig nifi cantl y   diff e re nt ord e r s,  the refor e  a l ot of att entio n must  be paid  to  their  represe nt at ion .   The  disad va ntage  of   t his  m et hod  is  the  ne cessi ty  of  ini ti al   app r ox i ma ti on   ( 28 ) ,  w hi ch  is  quit e  diff ic ult.  The   pa per   [ 24 ]   s ugge sts  us in g  sm a ll   loo ku p  ta ble s  for  this  pur pose,  but  it   ta kes  ad diti on al   m emo ry.  Anothe r  dr a w ba ck  of   t his  me thod  is  pro pagat ion   of  er rors   due  to   r oundi ng.  T he  a uthor   of  [ 24 ]  cl ai m s  that   high  pr eci si on  resu lt s  a re  usu al ly  achie ved  by  sta rtin g  with  Go l ds c hm idt ’s  al go rithm  a nd  the n  s witc hi ng   t o  the  sel f - co rr ec ti ng   New t on’s   it erati on s.   H oweve r,   f or   our   pur pose  the   tolera nce  of   ori gin al   al gorith m  i s   su f fici ent.       3.   PROP OSE D MET HO D   Af te r   a nalysis  of  ad va ntages   and  disa dvanta ges  of  the   disc us se d  m et hods,  the   aut hors   pro posed   a   com bin e d met hod, w hich  is fa r  s up e rio r  to  ot her  al gorithms .     Au t hors   pro po se  to   de fine   a n  init ia l  r oo t   int e rv al   as  desc ribed  in   ( 14 ) .  T hen,  i niti al   ap pro ximati on  can  be  ma de b y dr a wing the  s ecant bet ween  the ends  of the  root inter val a n d  cal culat io n o f  seca nt interse ct ion   with a bs ci ssa a xis,  Fi gure   5 .     The  e quat ion o f  the  secant li ne  draw n o ver  t wo points  [ x 1 ,   y 1 ]  an d [ x 2 ,   y 2 ] i s:       ( ) = 1 − 2 1 − 2 + 2 1 − 1 2 1 − 2   ( 34 )     Its ro ot can be   fou nd as:       = 1 2 − 2 1 1 − 2   ( 35 )     Assumin g  x 1   =   2 n ,  x 2   =   2 n+1   a nd combi ning  ( 10 ) wit h ( 35 )  r esults i niti al  gu ess:     0 = ( 2 2 − ) 2 + 1 − ( 2 2 + 2 − ) 2 ( 2 2 − ) − ( 2 2 + 2 − ) = 1 3 ( 2 + 1 + 2 )   ( 36 )     Let ’s  cal culat e  the ma xim um   error Δ x ma x .  F rom  Fi gure   6   e rror f un ct io n f or the a ppr ox i mati on   with  se cant is:      ( ) = 0 − = 1 3 ( 2 + 1 + 2 2 ) − = 2 3 ⋅ 2 − + 2 + 1 3   ( 37 )     It h as  ma xim um at  the  point:     1 2 3 − = n x m a x   ( 38 )     And maxim um abs olu te  e rror  is:     n x 2 12 1 − = m a x   ( 39 )     Figure   7   il lustr at es error f unct ion  a nd  dep ic ts  it s p ea k po i nt. Ma ximum rela ti ve  erro r  is:     % 6 . 5 18 1 2 3 2 12 1 1 m a x 0 − − = − = = − n n x x   ( 40 )     Evaluation Warning : The document was created with Spire.PDF for Python.
                          IS S N :   2088 - 8 694   In t J   P ow  Ele c  &  D ri   S ys t,   V ol .  11 , N o.   3 ,  Se ptembe r  2020   :    11 53   –   116 4   1162   As  ca n be see n from  ( 40 ), t he e rror i s n e gativ e, s o  init ia l g ue ss  x 0   ca n be im pro ved by a dding shi ft.   0 = 1 3 ( 2 + 1 + 2 ) +   ( 41 )             Figure  5 .  G e ome tric al  inter pret at ion   of the     pro po se d met hod     Figure  6 .  Erro r  of the  appr oximat ion       In  or der  to   ha ve  e qual   po sit ive  a nd  ne gativ e  abs olu te   er rors,  offset   val ue   A   s hould  be   1/24· 2 n   a nd   ( 41 )  tra ns f orm s into:     + = + + = − + n n n n n S S x 2 2 17 3 1 24 2 2 2 3 1 3 1 0   ( 42 )     If   we  ne ed  sa me  val ues  of  the  relat ive  er rors,   offset  va lue  A   s hould   be  0.0 3367 35· 2 n   an d  ( 41 )  trans forms  into :       0 = 1 3 ( 2 + 1 + 2 ) + 0 . 0 3 3 6 735 ⋅ 2 = 1 3 ( 1 . 0 5 0 5 1 025 ⋅ 2 + 1 + 2 )   ( 43 )     And fr om ( 40 ) maxim um   relat ive er ror  is:     % . m a x 36 3 1 0 0 − = x x   ( 44 )     This  er r or   is  al mo st  twic e  le ss   than  t he  first  s te p  er ror  in   the   Ne wton’s  met hod.  I f  preci sio n  of  ( 44 )  is   no t  suffic ie nt,   one  m ore  cal culat ion  ste p  s hould  be   pe r f ormed .  It   co ul d  be  performe d  acc ordin g  t o  ( 13 ),    wh ic h  is si m pl e f or  im pleme nt at ion , but i nvo lves  on e  d i vision o pe rati on.   Let ’s  fi nd the   maxim um   er ror,   wh ic h  c orres ponds t o X=2 n.   In it ia l ap pro ximati on :     0 = 1 3 ( 1 . 0 5 0 5 1 025 ⋅ 2 + 1 + 2 2 2 ) = 1 . 0 3 3 6 735 ⋅ 2   ( 45 )     First ste p ap prox imat io n:     1 = 1 2 ( 1 . 0 3 3 6 735 ⋅ 2 + 2 2 1 . 03 36 73 5 ⋅ 2 ) ≈ 1 . 0 0 0 5 485 ⋅ 2   ( 46 )     Re la ti ve  error  of the  first ste p ap pro ximati on:     1 = 1 − 1 = 1 . 00 05 48 5 ⋅ 2 2 − 1 ≈ 0 . 055%   ( 47 )   Wh ic h  is s uffic ie nt for  a  w i de ran ge of  engin eerin g  a pp li cat ion s .       Evaluation Warning : The document was created with Spire.PDF for Python.