Meta最新模型LLaMA细节与代码详解_llama模型结构

0. 简介

今天介绍的内容是Facebook Meta AI最新提出的语言模型LLaMA,该模型声称以更小的体积,在多数任务上超越了GPT-3的性能。

模型相关项目已经开源:
https://github.com/facebookresearch/llama

论文地址:https://scontent-tpe1-1.xx.fbcdn.net/v/t39.8562-6/333078981_693988129081760_4712707815225756708_n.pdf?_nc_cat=108&ccb=1-7&_nc_sid=ad8a9d&_nc_ohc=ov6yTHfLfNQAX-guxqd&_nc_ht=scontent-tpe1-1.xx&oh=00_AfDMyTEYewg-cHT9_4_sUaW5h0gqrqwjcNMylD9HtVFCWA&oe=6401C9E2

由于模型较大,目前的设备暂时没有办法支持进一步的实验,但是其模型代码已经开源,所以可以先通过代码了解一下模型结构上的一些细节,今天就针对github上放出的代码,了解一下模型的细节。

此外,该模型其实就是transformer做了一点细节上的改进,真正更有价值的工作应该在数据和训练方面。通过阅读代码,可以对transformer的基础构造进行复习,并且了解大模型如何在多卡上分布推理。
由于该项目源码几乎没有注释,这就肯定会给很多同学阅读时带来困扰,所以本文顺带着就把代码部分详细的介绍一下。

1. 项目环境依赖

此项目给出的环境依赖只有4个:

  • torch
  • fairscale
  • fire
  • sentencepiece

其中torch不比多讲,fairscale是用来做GPU分布的,一般是当使用DDP仍然遇到超显存的问题时使用fairscale。目前fairscale我还没有试过,在下文的源码介绍中,我会用torch中对应的基础网络替代fairscale中的结构层进行介绍。fire是一个命令行工具,用或者不用他都可以,sentencepiece是用于tokenizer的工具包,会在tokenizer部分简单介绍。

2. 模型细节

由于该模型就是用的transformer的decoder,所以在结构上它与GPT是非常类似的,只是有一些细节需要注意一下。

2.1 RMS Pre-Norm

关于Pre-Norm和Post-Norm是神经网络中老生常谈的话题,目前比较普遍的被大家接受的结论是,相同的深度条件下,Post-Norm的效果要优于Pre-Norm,因为Pre-Norm实际上相当于通过了一个更宽的网络而非更深的网络,所以在同等深度下,Pre-Norm的实际效果相当于一个更浅却更宽的网络,详细的推理过程参考:https://spaces.ac.cn/archives/9009

然而在LLaMA中却采用了Pre-Norm,或许是因为模型够深(7B,13B,30B,65B的模型,transformer layer数量分别为32,40,60,80),而Pre-Norm的恒等分支更加明显,有利于梯度的传播(这部分暂时没有想到很合理的解释,如果有更好的理解,欢迎在评论区补充)。

RMS Norm(Root Mean Square Layer Normalization),是一般LayerNorm的一种变体,可以在梯度下降时令损失更加平滑。

与layerNorm相比,RMS Norm的主要区别在于去掉了减去均值的部分(re-centering),只保留方差部分(re-scaling),从归一化的表达式上可以直观地看出:

  • 一般的LN:

        a 
       
      
        ‾ 
       
      
     
       i 
      
     
    
      = 
     
     
      
       
       
         a 
        
       
         i 
        
       
      
        − 
       
      
        μ 
       
      
     
       σ 
      
     
     
     
       g 
      
     
       i 
      
     
    
   
     \overline{a}_i = \frac {a_i- \mu} \sigma g_i 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.7806em; vertical-align: -0.15em;"></span><span class="mord"><span class="mord overline"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.6306em;"><span class="" style="top: -3em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal">a</span></span></span><span class="" style="top: -3.5506em;"><span class="pstrut" style="height: 3em;"></span><span class="overline-line" style="border-bottom-width: 0.04em;"></span></span></span></span></span></span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1.9463em; vertical-align: -0.686em;"></span><span class="mord"><span class="mopen nulldelimiter"></span><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.2603em;"><span class="" style="top: -2.314em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">σ</span></span></span><span class="" style="top: -3.23em;"><span class="pstrut" style="height: 3em;"></span><span class="frac-line" style="border-bottom-width: 0.04em;"></span></span><span class="" style="top: -3.677em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mord mathnormal">a</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mord mathnormal">μ</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.686em;"><span class=""></span></span></span></span></span><span class="mclose nulldelimiter"></span></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">g</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span></span><br> 其中,</p> 

      μ 
     
    
      = 
     
     
     
       1 
      
     
       n 
      
     
     
     
       ∑ 
      
      
      
        i 
       
      
        = 
       
      
        1 
       
      
     
       n 
      
     
     
     
       a 
      
     
       i 
      
     
    
   
     \mu = \frac 1 n \sum_{i=1}^na_i 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.625em; vertical-align: -0.1944em;"></span><span class="mord mathnormal">μ</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 2.9291em; vertical-align: -1.2777em;"></span><span class="mord"><span class="mopen nulldelimiter"></span><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.3214em;"><span class="" style="top: -2.314em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal">n</span></span></span><span class="" style="top: -3.23em;"><span class="pstrut" style="height: 3em;"></span><span class="frac-line" style="border-bottom-width: 0.04em;"></span></span><span class="" style="top: -3.677em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.686em;"><span class=""></span></span></span></span></span><span class="mclose nulldelimiter"></span></span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop op-limits"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.6514em;"><span class="" style="top: -1.8723em; margin-left: 0em;"><span class="pstrut" style="height: 3.05em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">i</span><span class="mrel mtight">=</span><span class="mord mtight">1</span></span></span></span><span class="" style="top: -3.05em;"><span class="pstrut" style="height: 3.05em;"></span><span class=""><span class="mop op-symbol large-op">∑</span></span></span><span class="" style="top: -4.3em; margin-left: 0em;"><span class="pstrut" style="height: 3.05em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 1.2777em;"><span class=""></span></span></span></span></span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">a</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span></span><br> <span class="katex--display"><span class="katex-display"><span class="katex"><span class="katex-mathml"> 
  
   
    
    
      σ 
     
    
      = 
     
     
      
       
       
         1 
        
       
         n 
        
       
       
       
         ∑ 
        
        
        
          i 
         
        
          = 
         
        
          1 
         
        
       
         n 
        
       
       
        
        
          ( 
         
         
         
           a 
          
         
           i 
          
         
        
          − 
         
        
          μ 
         
        
          ) 
         
        
       
         2 
        
       
      
     
    
   
     \sigma= \sqrt {\frac 1 n \sum_{i=1}^n{<!-- -->{(a_i-\mu)}^2}} 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.4306em;"></span><span class="mord mathnormal" style="margin-right: 0.0359em;">σ</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 3.1568em; vertical-align: -1.2777em;"></span><span class="mord sqrt"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.8791em;"><span class="svg-align" style="top: -5.1168em;"><span class="pstrut" style="height: 5.1168em;"></span><span class="mord" style="padding-left: 1.056em;"><span class="mord"><span class="mopen nulldelimiter"></span><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.3214em;"><span class="" style="top: -2.314em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal">n</span></span></span><span class="" style="top: -3.23em;"><span class="pstrut" style="height: 3em;"></span><span class="frac-line" style="border-bottom-width: 0.04em;"></span></span><span class="" style="top: -3.677em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.686em;"><span class=""></span></span></span></span></span><span class="mclose nulldelimiter"></span></span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop op-limits"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.6514em;"><span class="" style="top: -1.8723em; margin-left: 0em;"><span class="pstrut" style="height: 3.05em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">i</span><span class="mrel mtight">=</span><span class="mord mtight">1</span></span></span></span><span class="" style="top: -3.05em;"><span class="pstrut" style="height: 3.05em;"></span><span class=""><span class="mop op-symbol large-op">∑</span></span></span><span class="" style="top: -4.3em; margin-left: 0em;"><span class="pstrut" style="height: 3.05em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 1.2777em;"><span class=""></span></span></span></span></span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord"><span class="mord"><span class="mopen">(</span><span class="mord"><span class="mord mathnormal">a</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mord mathnormal">μ</span><span class="mclose">)</span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.954em;"><span class="" style="top: -3.2029em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span></span></span></span><span class="" style="top: -3.8391em;"><span class="pstrut" style="height: 5.1168em;"></span><span class="hide-tail" style="min-width: 0.742em; height: 3.1968em;"> 
        <svg width="400em" height="3.1968em" viewBox="0 0 400000 3196" preserveAspectRatio="xMinYMin slice"> 
         <path d="M702 80H40000040

H742v3062l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1
h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170
c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667
219 661 l218 661zM702 80H400000v40H742z">

  • RMS Norm:
             a 
            
           
             ‾ 
            
           
          
            i 
           
          
         
           = 
          
          
           
           
             a 
            
           
             i 
            
           
           
           
             R 
            
           
             M 
            
           
             S 
            
           
             ( 
            
           
             a 
            
           
             ) 
            
           
          
          
          
            g 
           
          
            i 
           
          
         
        
          \overline{a}_i = \frac {a_i} {RMS(a)} g_i 
         
        
      </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.7806em; vertical-align: -0.15em;"></span><span class="mord"><span class="mord overline"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.6306em;"><span class="" style="top: -3em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal">a</span></span></span><span class="" style="top: -3.5506em;"><span class="pstrut" style="height: 3em;"></span><span class="overline-line" style="border-bottom-width: 0.04em;"></span></span></span></span></span></span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 2.0436em; vertical-align: -0.936em;"></span><span class="mord"><span class="mopen nulldelimiter"></span><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.1076em;"><span class="" style="top: -2.314em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0576em;">RMS</span><span class="mopen">(</span><span class="mord mathnormal">a</span><span class="mclose">)</span></span></span><span class="" style="top: -3.23em;"><span class="pstrut" style="height: 3em;"></span><span class="frac-line" style="border-bottom-width: 0.04em;"></span></span><span class="" style="top: -3.677em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mord mathnormal">a</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.936em;"><span class=""></span></span></span></span></span><span class="mclose nulldelimiter"></span></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">g</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span></span><br> 其中,<br> <span class="katex--display"><span class="katex-display"><span class="katex"><span class="katex-mathml"> 
       
        
         
          
          
            R 
           
          
            M 
           
          
            S 
           
          
            ( 
           
          
            a 
           
          
            ) 
           
          
         
           = 
          
          
           
            
            
              1 
             
            
              n 
             
            
            
            
              ∑ 
             
             
             
               i 
              
             
               = 
              
             
               1 
              
             
            
              n 
             
            
            
             
             
               a 
              
             
               i 
              
             
            
              2 
             
            
           
          
         
        
          {RMS(a)}=\sqrt {\frac 1 n \sum_{i=1}^n{<!-- -->{a_i}^2}} 
         
        
      </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0576em;">RMS</span><span class="mopen">(</span><span class="mord mathnormal">a</span><span class="mclose">)</span></span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 3.1568em; vertical-align: -1.2777em;"></span><span class="mord sqrt"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.8791em;"><span class="svg-align" style="top: -5.1168em;"><span class="pstrut" style="height: 5.1168em;"></span><span class="mord" style="padding-left: 1.056em;"><span class="mord"><span class="mopen nulldelimiter"></span><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.3214em;"><span class="" style="top: -2.314em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal">n</span></span></span><span class="" style="top: -3.23em;"><span class="pstrut" style="height: 3em;"></span><span class="frac-line" style="border-bottom-width: 0.04em;"></span></span><span class="" style="top: -3.677em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.686em;"><span class=""></span></span></span></span></span><span class="mclose nulldelimiter"></span></span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop op-limits"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.6514em;"><span class="" style="top: -1.8723em; margin-left: 0em;"><span class="pstrut" style="height: 3.05em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">i</span><span class="mrel mtight">=</span><span class="mord mtight">1</span></span></span></span><span class="" style="top: -3.05em;"><span class="pstrut" style="height: 3.05em;"></span><span class=""><span class="mop op-symbol large-op">∑</span></span></span><span class="" style="top: -4.3em; margin-left: 0em;"><span class="pstrut" style="height: 3.05em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 1.2777em;"><span class=""></span></span></span></span></span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord"><span class="mord"><span class="mord"><span class="mord mathnormal">a</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3117em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">i</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.7401em;"><span class="" style="top: -2.989em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span></span></span></span><span class="" style="top: -3.8391em;"><span class="pstrut" style="height: 5.1168em;"></span><span class="hide-tail" style="min-width: 0.742em; height: 3.1968em;"> 
             <svg width="400em" height="3.1968em" viewBox="0 0 400000 3196" preserveAspectRatio="xMinYMin slice"> 
              <path d="M702 80H40000040
    

H742v3062l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1
h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170
c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667
219 661 l218 661zM702 80H400000v40H742z">

可以看到,二者的区别就在于有没有减去均值。至于RMS Norm为什么有用,需要求梯度进行分析,感兴趣的同学可以阅读RMS Norm的论文。

2.2 SwiGLU激活函数

LLaMA采用SwiGLU替换了原有的ReLU。

采用SwiGLU的FNN,在论文中以如下公式进行表述:

      F 
     
    
      F 
     
     
     
       N 
      
      
      
        s 
       
      
        w 
       
      
        i 
       
      
        G 
       
      
        L 
       
      
        U 
       
      
     
    
      ( 
     
    
      x 
     
    
      , 
     
    
      W 
     
    
      , 
     
    
      V 
     
    
      , 
     
     
     
       W 
      
     
       2 
      
     
    
      ) 
     
    
      = 
     
    
      ( 
     
    
      S 
     
    
      w 
     
    
      i 
     
    
      s 
     
     
     
       h 
      
     
       1 
      
     
    
      ( 
     
    
      x 
     
    
      W 
     
    
      ) 
     
    
      ⊗ 
     
    
      x 
     
    
      V 
     
    
      ) 
     
     
     
       W 
      
     
       2 
      
     
    
   
     FFN_{swiGLU}(x, W, V, W_2) = (Swish_1(xW)\otimes xV)W_2 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.1389em;">FF</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.109em;">N</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3283em;"><span class="" style="top: -2.55em; margin-left: -0.109em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">s</span><span class="mord mathnormal mtight" style="margin-right: 0.0269em;">w</span><span class="mord mathnormal mtight">i</span><span class="mord mathnormal mtight">G</span><span class="mord mathnormal mtight" style="margin-right: 0.109em;">LU</span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal" style="margin-right: 0.1389em;">W</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal" style="margin-right: 0.2222em;">V</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.1389em;">W</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.1389em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mclose">)</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal" style="margin-right: 0.0269em;">Sw</span><span class="mord mathnormal">i</span><span class="mord mathnormal">s</span><span class="mord"><span class="mord mathnormal">h</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mord mathnormal" style="margin-right: 0.1389em;">W</span><span class="mclose">)</span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">⊗</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal">x</span><span class="mord mathnormal" style="margin-right: 0.2222em;">V</span><span class="mclose">)</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.1389em;">W</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.1389em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span></span></p> 

其中,

     S 
    
   
     w 
    
   
     i 
    
   
     s 
    
    
    
      h 
     
    
      β 
     
    
   
     ( 
    
   
     x 
    
   
     ) 
    
   
     = 
    
   
     x 
    
   
     σ 
    
   
     ( 
    
   
     β 
    
   
     x 
    
   
     ) 
    
   
  
    Swish_\beta(x) = x\sigma(\beta x) 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 1.0361em; vertical-align: -0.2861em;"></span><span class="mord mathnormal" style="margin-right: 0.0269em;">Sw</span><span class="mord mathnormal">i</span><span class="mord mathnormal">s</span><span class="mord"><span class="mord mathnormal">h</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3361em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight" style="margin-right: 0.0528em;">β</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.2861em;"><span class=""></span></span></span></span></span></span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mclose">)</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal">x</span><span class="mord mathnormal" style="margin-right: 0.0359em;">σ</span><span class="mopen">(</span><span class="mord mathnormal" style="margin-right: 0.0528em;">β</span><span class="mord mathnormal">x</span><span class="mclose">)</span></span></span></span></span>, (<a href="https://arxiv.org/abs/1710.05941" rel="nofollow">Ramachandran et al., 2017</a>.)</p> 

2.3 RoPE旋转位置编码

RoPE(Rotary Position Embedding)旋转位置编码,是苏剑林老师提出的一种旋转位置编码方法,其思想是采用绝对位置编码的形式,实现相对位置编码。这一部分比较关键,如果不理解的话,后边的代码估计就看不懂了。读懂RoPE涉及一点复变函数的基础知识,不过如果你没有学过的话也没有关系。

位置编码对大模型而言尤为重要,因为既然是要训练大模型,那么长文本的表征和模型对于长文本的建模能力就显得非常重要。(但是对于绝对位置编码,我有一个直观地感受,认为其本质上不适用于长文本的场景,因为它会直接导致模型的Embedding层被无限放大,并且由于数据分布在seq_len方向上通常是长尾的,这又会必然导致绝对位置编码的矩阵在尾部会越来越稀疏,一方面造成资源浪费,另一方面这种表示方法直观上就很不利于模型的学习,因为它与我们实际场景是有很大的矛盾的。而RoPE虽然具有相对位置编码的性质,但是从代码部分可以看出,在构造的时候,其也是受到了最大长度的限制的。关于这一点,我无法严谨得说明,只是一点个人的想法。)。

而RoPE的巧妙之处在于,它既保留了绝对位置编码中的绝对位置信息,又保留了在内积运算下,对位置信息的相对性。

RoPE主要借助了复数的思想。为了引入复数,首先假设了在加入位置信息之前,原有的编码向量是二维行向量

      q 
     
    
      m 
     
    
   
  
    q_m 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.625em; vertical-align: -0.1944em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span>和<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      k 
     
    
      n 
     
    
   
  
    k_n 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8444em; vertical-align: -0.15em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span>,其中<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
   
     m 
    
   
  
    m 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.4306em;"></span><span class="mord mathnormal">m</span></span></span></span></span>和<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
   
     n 
    
   
  
    n 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.4306em;"></span><span class="mord mathnormal">n</span></span></span></span></span>是绝对位置,现在需要构造一个变换,将<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
   
     m 
    
   
  
    m 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.4306em;"></span><span class="mord mathnormal">m</span></span></span></span></span>和<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
   
     n 
    
   
  
    n 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.4306em;"></span><span class="mord mathnormal">n</span></span></span></span></span>引入到<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      q 
     
    
      m 
     
    
   
  
    q_m 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.625em; vertical-align: -0.1944em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span>和<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      k 
     
    
      n 
     
    
   
  
    k_n 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8444em; vertical-align: -0.15em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span>中,即寻找变换:</p> 

        q 
       
      
        m 
       
      
     
       ~ 
      
     
    
      = 
     
    
      f 
     
    
      ( 
     
    
      q 
     
    
      , 
     
    
      m 
     
    
      ) 
     
    
      , 
     
     
      
      
        k 
       
      
        n 
       
      
     
       ~ 
      
     
    
      = 
     
    
      f 
     
    
      ( 
     
    
      k 
     
    
      , 
     
    
      n 
     
    
      ) 
     
    
   
     \tilde {q_m} = f(q, m), \tilde{k_n} = f(k, n) 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8623em; vertical-align: -0.1944em;"></span><span class="mord accent"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.6679em;"><span class="" style="top: -3em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span><span class="" style="top: -3.35em;"><span class="pstrut" style="height: 3em;"></span><span class="accent-body" style="left: -0.25em;"><span class="mord">~</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.1944em;"><span class=""></span></span></span></span></span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1.1813em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.1076em;">f</span><span class="mopen">(</span><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal">m</span><span class="mclose">)</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord accent"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.9313em;"><span class="" style="top: -3em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span><span class="" style="top: -3.6134em;"><span class="pstrut" style="height: 3em;"></span><span class="accent-body" style="left: -0.25em;"><span class="mord">~</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.1076em;">f</span><span class="mopen">(</span><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal">n</span><span class="mclose">)</span></span></span></span></span></span><br> 考虑到Attention的核心计算是内积:<br> <span class="katex--display"><span class="katex-display"><span class="katex"><span class="katex-mathml"> 
  
   
    
    
      A 
     
    
      t 
     
    
      t 
     
    
      e 
     
    
      n 
     
    
      t 
     
    
      i 
     
    
      o 
     
    
      n 
     
    
      ( 
     
    
      Q 
     
    
      , 
     
    
      K 
     
    
      , 
     
    
      V 
     
    
      ) 
     
    
      = 
     
    
      s 
     
    
      o 
     
    
      f 
     
    
      t 
     
    
      m 
     
    
      a 
     
    
      x 
     
    
      ( 
     
     
      
      
        Q 
       
       
       
         K 
        
       
         T 
        
       
      
      
       
       
         d 
        
       
         k 
        
       
      
     
    
      ) 
     
    
      V 
     
    
   
     Attention(Q, K,V) = softmax(\frac {QK^T} {\sqrt{d_k}})V 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal">A</span><span class="mord mathnormal">tt</span><span class="mord mathnormal">e</span><span class="mord mathnormal">n</span><span class="mord mathnormal">t</span><span class="mord mathnormal">i</span><span class="mord mathnormal">o</span><span class="mord mathnormal">n</span><span class="mopen">(</span><span class="mord mathnormal">Q</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal" style="margin-right: 0.0715em;">K</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal" style="margin-right: 0.2222em;">V</span><span class="mclose">)</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 2.4483em; vertical-align: -0.93em;"></span><span class="mord mathnormal">so</span><span class="mord mathnormal" style="margin-right: 0.1076em;">f</span><span class="mord mathnormal">t</span><span class="mord mathnormal">ma</span><span class="mord mathnormal">x</span><span class="mopen">(</span><span class="mord"><span class="mopen nulldelimiter"></span><span class="mfrac"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.5183em;"><span class="" style="top: -2.2528em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord sqrt"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.8572em;"><span class="svg-align" style="top: -3em;"><span class="pstrut" style="height: 3em;"></span><span class="mord" style="padding-left: 0.833em;"><span class="mord"><span class="mord mathnormal">d</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3361em;"><span class="" style="top: -2.55em; margin-left: 0em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight" style="margin-right: 0.0315em;">k</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span><span class="" style="top: -2.8172em;"><span class="pstrut" style="height: 3em;"></span><span class="hide-tail" style="min-width: 0.853em; height: 1.08em;"> 
               <svg width="400em" height="1.08em" viewBox="0 0 400000 1080" preserveAspectRatio="xMinYMin slice"> 
                <path d="M95,702

c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14
c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54
c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10
s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429
c69,-144,104.5,-217.7,106.5,-221
l0 -0
c5.3,-9.3,12,-14,20,-14
H400000v40H845.2724
s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7
c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z
M834 80h400000v40h-400000z">
QKT)V

所以,寻求的这个

     f 
    
   
     ( 
    
   
     ∗ 
    
   
     ) 
    
   
  
    f(*) 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.1076em;">f</span><span class="mopen">(</span><span class="mord">∗</span><span class="mclose">)</span></span></span></span></span>变换,应该具有特性:<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
   
     ⟨ 
    
   
     f 
    
   
     ( 
    
   
     q 
    
   
     , 
    
   
     m 
    
   
     ) 
    
   
     , 
    
   
     f 
    
   
     ( 
    
   
     k 
    
   
     , 
    
   
     n 
    
   
     ) 
    
   
     ⟩ 
    
   
     = 
    
   
     g 
    
   
     ( 
    
   
     q 
    
   
     , 
    
   
     k 
    
   
     , 
    
   
     m 
    
   
     − 
    
   
     n 
    
   
     ) 
    
   
  
    \langle f(q, m), f(k, n) \rangle = g(q, k, m-n) 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">⟨</span><span class="mord mathnormal" style="margin-right: 0.1076em;">f</span><span class="mopen">(</span><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal">m</span><span class="mclose">)</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal" style="margin-right: 0.1076em;">f</span><span class="mopen">(</span><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal">n</span><span class="mclose">)⟩</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.0359em;">g</span><span class="mopen">(</span><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal">m</span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal">n</span><span class="mclose">)</span></span></span></span></span></p> 

这里直接说结论,寻求的变换就是

      q 
     
    
      m 
     
    
    
    
      e 
     
     
     
       i 
      
     
       m 
      
     
       θ 
      
     
    
   
  
    q_me^{im\theta} 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 1.0435em; vertical-align: -0.1944em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8491em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">im</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span></span></span></span></span>,也就是给<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      q 
     
    
      m 
     
    
   
  
    q_m 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.625em; vertical-align: -0.1944em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span>乘以<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      e 
     
     
     
       i 
      
     
       m 
      
     
       θ 
      
     
    
   
  
    e^{im\theta} 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8491em;"></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8491em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">im</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span></span></span></span></span>,相应地,<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      k 
     
    
      n 
     
    
   
  
    k_n 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8444em; vertical-align: -0.15em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span></span>乘以<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      e 
     
     
     
       i 
      
     
       n 
      
     
       θ 
      
     
    
   
  
    e^{in\theta} 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8491em;"></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8491em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">in</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span></span></span></span></span>。</p> 

具体的求解过程,请参考苏剑林老师的博客

做了这样一个变换之后,根据复数的特性,有:

      ⟨ 
     
     
     
       q 
      
     
       m 
      
     
    
      , 
     
     
     
       k 
      
     
       n 
      
     
    
      ⟩ 
     
    
      = 
     
    
      R 
     
    
      e 
     
    
      [ 
     
     
     
       q 
      
     
       m 
      
     
     
     
       k 
      
     
       n 
      
     
       ∗ 
      
     
    
      ] 
     
    
   
     \langle q_m, k_n \rangle = Re[q_mk^*_n] 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">⟨</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mclose">⟩</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.0077em;">R</span><span class="mord mathnormal">e</span><span class="mopen">[</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.7387em;"><span class="" style="top: -2.453em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mbin mtight">∗</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.247em;"><span class=""></span></span></span></span></span></span><span class="mclose">]</span></span></span></span></span></span></p> 

也就是,如果把二维向量看做复数,那么它们的内积,等于一个复数乘以另一个复数的共轭,得到的结果再取实部。

带入上面的变换,也就有:

      ⟨ 
     
     
     
       q 
      
     
       m 
      
     
     
     
       e 
      
      
      
        i 
       
      
        m 
       
      
        θ 
       
      
     
    
      , 
     
     
     
       k 
      
     
       n 
      
     
     
     
       e 
      
      
      
        i 
       
      
        n 
       
      
        θ 
       
      
     
    
      ⟩ 
     
    
      = 
     
    
      R 
     
    
      e 
     
    
      [ 
     
    
      ( 
     
     
     
       q 
      
     
       m 
      
     
     
     
       e 
      
      
      
        i 
       
      
        m 
       
      
        θ 
       
      
     
    
      ) 
     
    
      ( 
     
     
     
       k 
      
     
       n 
      
     
     
     
       e 
      
      
      
        i 
       
      
        n 
       
      
        θ 
       
      
     
     
     
       ) 
      
     
       ∗ 
      
     
    
      ] 
     
    
      = 
     
    
      R 
     
    
      e 
     
    
      [ 
     
     
     
       q 
      
     
       m 
      
     
     
     
       k 
      
     
       n 
      
     
       ∗ 
      
     
     
     
       e 
      
      
      
        i 
       
      
        ( 
       
      
        m 
       
      
        − 
       
      
        n 
       
      
        ) 
       
      
        θ 
       
      
     
    
      ] 
     
    
   
     \langle q_me^{im\theta}, k_ne^{in\theta} \rangle = Re[(q_me^{im\theta}) (k_ne^{in\theta})^*] =Re[q_mk_n^*e^{i(m-n)\theta}] 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1.1491em; vertical-align: -0.25em;"></span><span class="mopen">⟨</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8991em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">im</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8991em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">in</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span><span class="mclose">⟩</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1.1491em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.0077em;">R</span><span class="mord mathnormal">e</span><span class="mopen">[(</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8991em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">im</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span><span class="mclose">)</span><span class="mopen">(</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8991em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">in</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span><span class="mclose"><span class="mclose">)</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.7387em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mbin mtight">∗</span></span></span></span></span></span></span></span><span class="mclose">]</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1.188em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.0077em;">R</span><span class="mord mathnormal">e</span><span class="mopen">[</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.1514em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">m</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0315em;">k</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.7387em;"><span class="" style="top: -2.453em; margin-left: -0.0315em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mbin mtight">∗</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.247em;"><span class=""></span></span></span></span></span></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.938em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">i</span><span class="mopen mtight">(</span><span class="mord mathnormal mtight">m</span><span class="mbin mtight">−</span><span class="mord mathnormal mtight">n</span><span class="mclose mtight">)</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span><span class="mclose">]</span></span></span></span></span></span></p> 

这样一来,内积的结果就只依赖于

     ( 
    
   
     m 
    
   
     − 
    
   
     n 
    
   
     ) 
    
   
  
    (m-n) 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal">m</span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal">n</span><span class="mclose">)</span></span></span></span></span>,也就是相对位置了。换言之,经过这样一番操作,通过给Embedding添加绝对位置信息,可以使得两个token的编码,经过内积变换(self-attn)之后,得到结果,是受它们位置的差值,即相对位置影响的。</p> 

于是对于任意的位置为

     m 
    
   
  
    m 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.4306em;"></span><span class="mord mathnormal">m</span></span></span></span></span>的二维向量<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
   
     [ 
    
   
     x 
    
   
     , 
    
   
     y 
    
   
     ] 
    
   
  
    [x, y] 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">[</span><span class="mord mathnormal">x</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal" style="margin-right: 0.0359em;">y</span><span class="mclose">]</span></span></span></span></span>,把它看做复数,乘以<span class="katex--inline"><span class="katex"><span class="katex-mathml"> 
 
  
   
    
    
      e 
     
     
     
       i 
      
     
       m 
      
     
       θ 
      
     
    
   
  
    e^{im\theta} 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8491em;"></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8491em;"><span class="" style="top: -3.063em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">im</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span></span></span></span></span>,而根据欧拉公式,有:</p> 

       e 
      
      
      
        i 
       
      
        m 
       
      
        θ 
       
      
     
    
      = 
     
    
      cos 
     
    
      ⁡ 
     
     
     
       m 
      
     
       θ 
      
     
    
      + 
     
    
      i 
     
    
      sin 
     
    
      ⁡ 
     
     
     
       m 
      
     
       θ 
      
     
    
   
     e^{im\theta}=\cos{m\theta}+i\sin{m\theta} 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 0.8991em;"></span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8991em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">im</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 0.7778em; vertical-align: -0.0833em;"></span><span class="mop">cos</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">+</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 0.6944em;"></span><span class="mord mathnormal">i</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop">sin</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></p> 

于是上述的相乘变换也就变成了:

      ( 
     
    
      x 
     
    
      + 
     
    
      i 
     
    
      y 
     
    
      ) 
     
     
     
       e 
      
      
      
        i 
       
      
        m 
       
      
        θ 
       
      
     
    
      = 
     
    
      ( 
     
    
      x 
     
    
      cos 
     
    
      ⁡ 
     
     
     
       m 
      
     
       θ 
      
     
    
      − 
     
    
      y 
     
    
      sin 
     
    
      ⁡ 
     
     
     
       m 
      
     
       θ 
      
     
    
      ) 
     
    
      + 
     
    
      i 
     
    
      ( 
     
    
      x 
     
    
      sin 
     
    
      ⁡ 
     
     
     
       m 
      
     
       θ 
      
     
    
      + 
     
    
      y 
     
    
      cos 
     
    
      ⁡ 
     
     
     
       m 
      
     
       θ 
      
     
    
      ) 
     
    
   
     (x+iy)e^{im\theta}=(x\cos{m\theta}-y\sin{m\theta})+i(x\sin{m\theta}+y\cos{m\theta}) 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">+</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 1.1491em; vertical-align: -0.25em;"></span><span class="mord mathnormal">i</span><span class="mord mathnormal" style="margin-right: 0.0359em;">y</span><span class="mclose">)</span><span class="mord"><span class="mord mathnormal">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height: 0.8991em;"><span class="" style="top: -3.113em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mathnormal mtight">im</span><span class="mord mathnormal mtight" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span></span></span></span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop">cos</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.0359em;">y</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop">sin</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span><span class="mclose">)</span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">+</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal">i</span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop">sin</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span><span class="mspace" style="margin-right: 0.2222em;"></span><span class="mbin">+</span><span class="mspace" style="margin-right: 0.2222em;"></span></span><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.0359em;">y</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop">cos</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span><span class="mclose">)</span></span></span></span></span></span></p> 

把上述式子写成矩阵形式:

      f 
     
    
      ( 
     
    
      ( 
     
     
     
       q 
      
     
       0 
      
     
    
      , 
     
     
     
       q 
      
     
       1 
      
     
    
      ) 
     
    
      , 
     
    
      m 
     
    
      ) 
     
    
      = 
     
     
     
       [ 
      
      
       
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
           
             θ 
            
           
          
         
        
        
         
          
          
            − 
           
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
           
             θ 
            
           
          
         
        
       
       
        
         
          
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
           
             θ 
            
           
          
         
        
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
           
             θ 
            
           
          
         
        
       
      
     
       ] 
      
     
     
     
       [ 
      
      
       
        
         
          
          
            q 
           
          
            0 
           
          
         
        
       
       
        
         
          
          
            q 
           
          
            1 
           
          
         
        
       
      
     
       ] 
      
     
    
   
     f((q_0, q_1), m) = <span class="MathJax_Preview" style="color: inherit; display: none;"></span><div class="MathJax_Display"><span class="MathJax MathJax_FullWidth" id="MathJax-Element-1-Frame" tabindex="0" style="position: relative;" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot; display=&quot;block&quot;><mrow><mo>[</mo><mtable rowspacing=&quot;4pt&quot; columnspacing=&quot;1em&quot;><mtr><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><mi>&amp;#x03B8;</mi></mrow></mrow></mtd><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>&amp;#x2212;</mo><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><mi>&amp;#x03B8;</mi></mrow></mrow></mtd></mtr><mtr><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><mi>&amp;#x03B8;</mi></mrow></mrow></mtd><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><mi>&amp;#x03B8;</mi></mrow></mrow></mtd></mtr></mtable><mo>]</mo></mrow></math>" role="presentation"><nobr aria-hidden="true"><span class="math" id="MathJax-Span-1" style="width: 100%; display: inline-block; min-width: 9.115em;"><span style="display: inline-block; position: relative; width: 100%; height: 0px; font-size: 102%;"><span style="position: absolute; clip: rect(2.397em, 1008.68em, 5.101em, -1000em); top: -3.999em; left: 0em; width: 100%;"><span class="mrow" id="MathJax-Span-2"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.397em, 1008.68em, 5.101em, -1000em); top: -3.999em; left: 50%; margin-left: -4.465em;"><span class="mrow" id="MathJax-Span-3"><span class="mo" id="MathJax-Span-4" style="vertical-align: 0em;"><span style="font-family: MathJax_Size3;">[</span></span><span class="mtable" id="MathJax-Span-5" style="padding-right: 0.167em; padding-left: 0.167em;"><span style="display: inline-block; position: relative; width: 7.539em; height: 0px;"><span style="position: absolute; clip: rect(2.492em, 1002.85em, 4.912em, -1000em); top: -3.999em; left: 0em;"><span style="display: inline-block; position: relative; width: 2.852em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.142em, 1002.85em, 4.162em, -1000em); top: -4.649em; left: 0em;"><span class="mtd" id="MathJax-Span-6"><span class="mrow" id="MathJax-Span-7"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1002.85em, 4.162em, -1000em); top: -3.999em; left: 50%; margin-left: -1.426em;"><span class="texatom" id="MathJax-Span-8"><span class="mrow" id="MathJax-Span-9"><span style="display: inline-block; position: relative; width: 2.852em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1002.85em, 4.162em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-10" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-11"></span><span class="texatom" id="MathJax-Span-12" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-13"><span style="display: inline-block; position: relative; width: 1.347em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.34em, 4.162em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-14" style="font-family: MathJax_Math-italic;">m</span><span class="mi" id="MathJax-Span-15" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1002.74em, 4.162em, -1000em); top: -3.249em; left: 0em;"><span class="mtd" id="MathJax-Span-27"><span class="mrow" id="MathJax-Span-28"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1002.74em, 4.162em, -1000em); top: -3.999em; left: 50%; margin-left: -1.371em;"><span class="texatom" id="MathJax-Span-29"><span class="mrow" id="MathJax-Span-30"><span style="display: inline-block; position: relative; width: 2.742em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1002.74em, 4.162em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-31" style="font-family: MathJax_Main;">sin</span><span class="mo" id="MathJax-Span-32"></span><span class="texatom" id="MathJax-Span-33" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-34"><span style="display: inline-block; position: relative; width: 1.347em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.34em, 4.162em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-35" style="font-family: MathJax_Math-italic;">m</span><span class="mi" id="MathJax-Span-36" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; clip: rect(2.492em, 1003.68em, 4.912em, -1000em); top: -3.999em; left: 3.852em;"><span style="display: inline-block; position: relative; width: 3.687em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.142em, 1003.68em, 4.233em, -1000em); top: -4.649em; left: 0em;"><span class="mtd" id="MathJax-Span-16"><span class="mrow" id="MathJax-Span-17"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.68em, 4.233em, -1000em); top: -3.999em; left: 50%; margin-left: -1.843em;"><span class="texatom" id="MathJax-Span-18"><span class="mrow" id="MathJax-Span-19"><span style="display: inline-block; position: relative; width: 3.687em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.68em, 4.233em, -1000em); top: -3.999em; left: 0em;"><span class="mo" id="MathJax-Span-20" style="font-family: MathJax_Main;">−</span><span class="mi" id="MathJax-Span-21" style="font-family: MathJax_Main; padding-left: 0.167em;">sin</span><span class="mo" id="MathJax-Span-22"></span><span class="texatom" id="MathJax-Span-23" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-24"><span style="display: inline-block; position: relative; width: 1.347em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.34em, 4.162em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-25" style="font-family: MathJax_Math-italic;">m</span><span class="mi" id="MathJax-Span-26" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1002.85em, 4.162em, -1000em); top: -3.249em; left: 0em;"><span class="mtd" id="MathJax-Span-37"><span class="mrow" id="MathJax-Span-38"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1002.85em, 4.162em, -1000em); top: -3.999em; left: 50%; margin-left: -1.426em;"><span class="texatom" id="MathJax-Span-39"><span class="mrow" id="MathJax-Span-40"><span style="display: inline-block; position: relative; width: 2.852em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1002.85em, 4.162em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-41" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-42"></span><span class="texatom" id="MathJax-Span-43" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-44"><span style="display: inline-block; position: relative; width: 1.347em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.34em, 4.162em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-45" style="font-family: MathJax_Math-italic;">m</span><span class="mi" id="MathJax-Span-46" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span class="mo" id="MathJax-Span-47" style="vertical-align: 0em;"><span style="font-family: MathJax_Size3;">]</span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; overflow: hidden; vertical-align: -1.021em; border-left: 0px solid; width: 0px; height: 2.551em;"></span></span></nobr><span class="MJX_Assistive_MathML MJX_Assistive_MathML_Block" role="presentation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mo>[</mo><mtable rowspacing="4pt" columnspacing="1em"><mtr><mtd><mrow class="MJX-TeXAtom-ORD"><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><mi>θ</mi></mrow></mrow></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mo>−</mo><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><mi>θ</mi></mrow></mrow></mtd></mtr><mtr><mtd><mrow class="MJX-TeXAtom-ORD"><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><mi>θ</mi></mrow></mrow></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><mi>θ</mi></mrow></mrow></mtd></mtr></mtable><mo>]</mo></mrow></math></span></span></div><script type="math/tex; mode=display" id="MathJax-Element-1">\begin{bmatrix} {\cos{m\theta}}&{-\sin{m\theta}} \\ {\sin{m\theta}}&{\cos{m\theta}} \\ \end{bmatrix}</script> <span class="MathJax_Preview" style="color: inherit; display: none;"></span><div class="MathJax_Display"><span class="MathJax MathJax_FullWidth" id="MathJax-Element-2-Frame" tabindex="0" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot; display=&quot;block&quot;><mrow><mo>[</mo><mtable rowspacing=&quot;4pt&quot; columnspacing=&quot;1em&quot;><mtr><mtd><msub><mi>q</mi><mn>0</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>1</mn></msub></mtd></mtr></mtable><mo>]</mo></mrow></math>" role="presentation" style="position: relative;"><nobr aria-hidden="true"><span class="math" id="MathJax-Span-48" style="width: 100%; display: inline-block; min-width: 2.331em;"><span style="display: inline-block; position: relative; width: 100%; height: 0px; font-size: 102%;"><span style="position: absolute; clip: rect(2.397em, 1002.02em, 5.101em, -1000em); top: -3.999em; left: 0em; width: 100%;"><span class="mrow" id="MathJax-Span-49"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.397em, 1002.02em, 5.101em, -1000em); top: -3.999em; left: 50%; margin-left: -1.132em;"><span class="mrow" id="MathJax-Span-50"><span class="mo" id="MathJax-Span-51" style="vertical-align: 0em;"><span style="font-family: MathJax_Size3;">[</span></span><span class="mtable" id="MathJax-Span-52" style="padding-right: 0.167em; padding-left: 0.167em;"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; clip: rect(2.755em, 1000.88em, 5.095em, -1000em); top: -3.999em; left: 0em;"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -4.649em; left: 0em;"><span class="mtd" id="MathJax-Span-53"><span class="mrow" id="MathJax-Span-54"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -3.999em; left: 50%; margin-left: -0.437em;"><span class="msubsup" id="MathJax-Span-55"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-56" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="mn" id="MathJax-Span-57" style="font-size: 70.7%; font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -3.249em; left: 0em;"><span class="mtd" id="MathJax-Span-58"><span class="mrow" id="MathJax-Span-59"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -3.999em; left: 50%; margin-left: -0.437em;"><span class="msubsup" id="MathJax-Span-60"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-61" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="mn" id="MathJax-Span-62" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span class="mo" id="MathJax-Span-63" style="vertical-align: 0em;"><span style="font-family: MathJax_Size3;">]</span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; overflow: hidden; vertical-align: -1.021em; border-left: 0px solid; width: 0px; height: 2.551em;"></span></span></nobr><span class="MJX_Assistive_MathML MJX_Assistive_MathML_Block" role="presentation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mo>[</mo><mtable rowspacing="4pt" columnspacing="1em"><mtr><mtd><msub><mi>q</mi><mn>0</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>1</mn></msub></mtd></mtr></mtable><mo>]</mo></mrow></math></span></span></div><script type="math/tex; mode=display" id="MathJax-Element-2">\begin{bmatrix} q_0\\q_1\end{bmatrix}</script> 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mord mathnormal" style="margin-right: 0.1076em;">f</span><span class="mopen">((</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">0</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mclose">)</span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord mathnormal">m</span><span class="mclose">)</span><span class="mspace" style="margin-right: 0.2778em;"></span><span class="mrel">=</span><span class="mspace" style="margin-right: 0.2778em;"></span></span><span class="base"><span class="strut" style="height: 2.4em; vertical-align: -0.95em;"></span><span class="minner"><span class="mopen delimcenter" style="top: 0em;"><span class="delimsizing size3">[</span></span><span class="mord"><span class="mtable"><span class="col-align-c"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.45em;"><span class="" style="top: -3.61em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mop">cos</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span></span></span></span><span class="" style="top: -2.41em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mop">sin</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.95em;"><span class=""></span></span></span></span></span><span class="arraycolsep" style="width: 0.5em;"></span><span class="arraycolsep" style="width: 0.5em;"></span><span class="col-align-c"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.45em;"><span class="" style="top: -3.61em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mord">−</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mop">sin</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span></span></span></span><span class="" style="top: -2.41em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mop">cos</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal">m</span><span class="mord mathnormal" style="margin-right: 0.0278em;">θ</span></span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.95em;"><span class=""></span></span></span></span></span></span></span><span class="mclose delimcenter" style="top: 0em;"><span class="delimsizing size3">]</span></span></span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="minner"><span class="mopen delimcenter" style="top: 0em;"><span class="delimsizing size3">[</span></span><span class="mord"><span class="mtable"><span class="col-align-c"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 1.45em;"><span class="" style="top: -3.61em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">0</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span><span class="" style="top: -2.41em;"><span class="pstrut" style="height: 3em;"></span><span class="mord"><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.95em;"><span class=""></span></span></span></span></span></span></span><span class="mclose delimcenter" style="top: 0em;"><span class="delimsizing size3">]</span></span></span></span></span></span></span></span></p> 

而这个变换的几何意义,就是在二维坐标系下,对向量

     ( 
    
    
    
      q 
     
    
      0 
     
    
   
     , 
    
    
    
      q 
     
    
      1 
     
    
   
     ) 
    
   
  
    (q_0, q_1) 
   
  
</span><span class="katex-html"><span class="base"><span class="strut" style="height: 1em; vertical-align: -0.25em;"></span><span class="mopen">(</span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">0</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mpunct">,</span><span class="mspace" style="margin-right: 0.1667em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right: 0.0359em;">q</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 0.3011em;"><span class="" style="top: -2.55em; margin-left: -0.0359em; margin-right: 0.05em;"><span class="pstrut" style="height: 2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">1</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height: 0.15em;"><span class=""></span></span></span></span></span></span><span class="mclose">)</span></span></span></span></span>进行了旋转,因而这种位置编码方法,被称为旋转位置编码。</p> 

根据刚才的结论,结合内积的线性叠加性,可以将结论推广到高维的情形。可以理解为,每两个维度一组,进行了上述的“旋转”操作,然后再拼接在一起:

       [ 
      
      
       
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              0 
             
            
           
          
         
        
        
         
          
          
            − 
           
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              0 
             
            
           
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           ⋯ 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
       
       
        
         
          
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              0 
             
            
           
          
         
        
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              0 
             
            
           
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           ⋯ 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
       
       
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              1 
             
            
           
          
         
        
        
         
          
          
            − 
           
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              1 
             
            
           
          
         
        
        
         
         
           ⋯ 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
       
       
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
          
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              1 
             
            
           
          
         
        
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
            
              1 
             
            
           
          
         
        
        
         
         
           ⋯ 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
       
       
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
        
         
         
           ⋱ 
          
         
        
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
       
       
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           ⋯ 
          
         
        
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
             
              
              
                d 
               
              
                / 
               
              
                2 
               
              
             
               − 
              
             
               1 
              
             
            
           
          
         
        
        
         
          
          
            − 
           
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
             
              
              
                d 
               
              
                / 
               
              
                2 
               
              
             
               − 
              
             
               1 
              
             
            
           
          
         
        
       
       
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           0 
          
         
        
        
         
         
           ⋯ 
          
         
        
        
         
          
          
            sin 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
             
              
              
                d 
               
              
                / 
               
              
                2 
               
              
             
               − 
              
             
               1 
              
             
            
           
          
         
        
        
         
          
          
            cos 
           
          
            ⁡ 
           
           
           
             m 
            
            
            
              θ 
             
             
              
              
                d 
               
              
                / 
               
              
                2 
               
              
             
               − 
              
             
               1 
              
             
            
           
          
         
        
       
      
     
       ] 
      
     
     
     
       [ 
      
      
       
        
         
          
          
            q 
           
          
            0 
           
          
         
        
       
       
        
         
          
          
            q 
           
          
            1 
           
          
         
        
       
       
        
         
          
          
            q 
           
          
            2 
           
          
         
        
       
       
        
         
          
          
            q 
           
          
            3 
           
          
         
        
       
       
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
       
       
        
         
          
          
            q 
           
           
           
             d 
            
           
             − 
            
           
             2 
            
           
          
         
        
       
       
        
         
          
          
            q 
           
           
           
             d 
            
           
             − 
            
           
             1 
            
           
          
         
        
       
      
     
       ] 
      
     
    
   
     <span class="MathJax_Preview" style="color: inherit; display: none;"></span><div class="MathJax_Display"><span class="MathJax MathJax_FullWidth" id="MathJax-Element-3-Frame" tabindex="0" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot; display=&quot;block&quot;><mrow><mo>[</mo><mtable rowspacing=&quot;4pt&quot; columnspacing=&quot;1em&quot;><mtr><mtd><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>0</mn></msub></mrow></mtd><mtd><mo>&amp;#x2212;</mo><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>0</mn></msub></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>&amp;#x22EF;</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>0</mn></msub></mrow></mtd><mtd><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>0</mn></msub></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>&amp;#x22EF;</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>1</mn></msub></mrow></mtd><mtd><mo>&amp;#x2212;</mo><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>1</mn></msub></mrow></mtd><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>&amp;#x22EF;</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>1</mn></msub></mrow></mtd><mtd><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mn>1</mn></msub></mrow></mtd><mtd><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>&amp;#x22EF;</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mo>&amp;#x22EE;</mo></mtd><mtd><mo>&amp;#x22EE;</mo></mtd><mtd><mo>&amp;#x22EE;</mo></mtd><mtd><mo>&amp;#x22EE;</mo></mtd><mtd><mo>&amp;#x22F1;</mo></mtd><mtd><mo>&amp;#x22EE;</mo></mtd><mtd><mo>&amp;#x22EE;</mo></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mo>&amp;#x22EF;</mo></mtd><mtd><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>d</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>/</mo></mrow><mn>2</mn></mrow><mo>&amp;#x2212;</mo><mn>1</mn></mrow></msub></mrow></mtd><mtd><mo>&amp;#x2212;</mo><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>d</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>/</mo></mrow><mn>2</mn></mrow><mo>&amp;#x2212;</mo><mn>1</mn></mrow></msub></mrow></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mo>&amp;#x22EF;</mo></mtd><mtd><mi>sin</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>d</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>/</mo></mrow><mn>2</mn></mrow><mo>&amp;#x2212;</mo><mn>1</mn></mrow></msub></mrow></mtd><mtd><mi>cos</mi><mo>&amp;#x2061;</mo><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>m</mi><msub><mi>&amp;#x03B8;</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>d</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mo>/</mo></mrow><mn>2</mn></mrow><mo>&amp;#x2212;</mo><mn>1</mn></mrow></msub></mrow></mtd></mtr></mtable><mo>]</mo></mrow></math>" role="presentation" style="position: relative;"><nobr aria-hidden="true"><span class="math" id="MathJax-Span-64" style="width: 100%; display: inline-block; min-width: 35.084em;"><span style="display: inline-block; position: relative; width: 100%; height: 0px; font-size: 102%;"><span style="position: absolute; clip: rect(5.816em, 1034.07em, 16.565em, -1000em); top: -11.441em; left: 0em; width: 100%;"><span class="mrow" id="MathJax-Span-65"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(5.816em, 1034.07em, 16.565em, -1000em); top: -11.441em; left: 50%; margin-left: -17.196em;"><span class="mrow" id="MathJax-Span-66"><span class="mo" id="MathJax-Span-67" style="vertical-align: 5.473em;"><span style="display: inline-block; position: relative; width: 0.667em; height: 0px;"><span style="position: absolute; font-family: MathJax_Size4; top: -2.845em; left: 0em;">⎡<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; font-family: MathJax_Size4; top: 5.802em; left: 0em;">⎣<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.668em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.136em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.604em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.072em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.46em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.992em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 1.524em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.057em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.589em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.121em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.653em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 4.185em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 4.717em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span class="mtable" id="MathJax-Span-68" style="padding-right: 0.167em; padding-left: 0.167em;"><span style="display: inline-block; position: relative; width: 32.724em; height: 0px;"><span style="position: absolute; clip: rect(5.456em, 1003.28em, 15.769em, -1000em); top: -10.985em; left: 0em;"><span style="display: inline-block; position: relative; width: 3.281em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.142em, 1003.28em, 4.317em, -1000em); top: -8.672em; left: 0em;"><span class="mtd" id="MathJax-Span-69"><span class="mrow" id="MathJax-Span-70"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.28em, 4.317em, -1000em); top: -3.999em; left: 50%; margin-left: -1.64em;"><span class="mi" id="MathJax-Span-71" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-72"></span><span class="texatom" id="MathJax-Span-73" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-74"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.317em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-75" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-76"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-77" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-78" style="font-size: 70.7%; font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1003.17em, 4.317em, -1000em); top: -7.272em; left: 0em;"><span class="mtd" id="MathJax-Span-107"><span class="mrow" id="MathJax-Span-108"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.17em, 4.317em, -1000em); top: -3.999em; left: 50%; margin-left: -1.585em;"><span class="mi" id="MathJax-Span-109" style="font-family: MathJax_Main;">sin</span><span class="mo" id="MathJax-Span-110"></span><span class="texatom" id="MathJax-Span-111" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-112"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.317em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-113" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-114"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-115" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-116" style="font-size: 70.7%; font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -5.872em; left: 0em;"><span class="mtd" id="MathJax-Span-144"><span class="mrow" id="MathJax-Span-145"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-146" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -4.472em; left: 0em;"><span class="mtd" id="MathJax-Span-182"><span class="mrow" id="MathJax-Span-183"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-184" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -2.352em; left: 0em;"><span class="mtd" id="MathJax-Span-219"><span class="mrow" id="MathJax-Span-220"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -3.999em; left: 50%; margin-left: -0.139em;"><span class="mo" id="MathJax-Span-221" style="font-family: MathJax_Main;">⋮</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -0.952em; left: 0em;"><span class="mtd" id="MathJax-Span-240"><span class="mrow" id="MathJax-Span-241"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-242" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: 0.611em; left: 0em;"><span class="mtd" id="MathJax-Span-296"><span class="mrow" id="MathJax-Span-297"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-298" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 10.985em;"></span></span><span style="position: absolute; clip: rect(5.456em, 1004.12em, 15.769em, -1000em); top: -10.985em; left: 4.281em;"><span style="display: inline-block; position: relative; width: 4.116em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.142em, 1004.12em, 4.317em, -1000em); top: -8.672em; left: 0em;"><span class="mtd" id="MathJax-Span-79"><span class="mrow" id="MathJax-Span-80"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1004.12em, 4.317em, -1000em); top: -3.999em; left: 50%; margin-left: -2.058em;"><span class="mo" id="MathJax-Span-81" style="font-family: MathJax_Main;">−</span><span class="mi" id="MathJax-Span-82" style="font-family: MathJax_Main; padding-left: 0.167em;">sin</span><span class="mo" id="MathJax-Span-83"></span><span class="texatom" id="MathJax-Span-84" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-85"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.317em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-86" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-87"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-88" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-89" style="font-size: 70.7%; font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1003.28em, 4.317em, -1000em); top: -7.272em; left: 0em;"><span class="mtd" id="MathJax-Span-117"><span class="mrow" id="MathJax-Span-118"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.28em, 4.317em, -1000em); top: -3.999em; left: 50%; margin-left: -1.64em;"><span class="mi" id="MathJax-Span-119" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-120"></span><span class="texatom" id="MathJax-Span-121" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-122"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.317em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-123" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-124"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-125" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-126" style="font-size: 70.7%; font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -5.872em; left: 0em;"><span class="mtd" id="MathJax-Span-147"><span class="mrow" id="MathJax-Span-148"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-149" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -4.472em; left: 0em;"><span class="mtd" id="MathJax-Span-185"><span class="mrow" id="MathJax-Span-186"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-187" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -2.352em; left: 0em;"><span class="mtd" id="MathJax-Span-222"><span class="mrow" id="MathJax-Span-223"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -3.999em; left: 50%; margin-left: -0.139em;"><span class="mo" id="MathJax-Span-224" style="font-family: MathJax_Main;">⋮</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -0.952em; left: 0em;"><span class="mtd" id="MathJax-Span-243"><span class="mrow" id="MathJax-Span-244"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-245" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: 0.611em; left: 0em;"><span class="mtd" id="MathJax-Span-299"><span class="mrow" id="MathJax-Span-300"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-301" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 10.985em;"></span></span><span style="position: absolute; clip: rect(5.495em, 1003.28em, 15.769em, -1000em); top: -10.985em; left: 9.396em;"><span style="display: inline-block; position: relative; width: 3.281em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -8.672em; left: 0em;"><span class="mtd" id="MathJax-Span-90"><span class="mrow" id="MathJax-Span-91"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-92" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -7.272em; left: 0em;"><span class="mtd" id="MathJax-Span-127"><span class="mrow" id="MathJax-Span-128"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-129" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1003.28em, 4.301em, -1000em); top: -5.872em; left: 0em;"><span class="mtd" id="MathJax-Span-150"><span class="mrow" id="MathJax-Span-151"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.28em, 4.301em, -1000em); top: -3.999em; left: 50%; margin-left: -1.64em;"><span class="mi" id="MathJax-Span-152" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-153"></span><span class="texatom" id="MathJax-Span-154" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-155"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.301em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-156" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-157"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-158" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-159" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1003.17em, 4.301em, -1000em); top: -4.472em; left: 0em;"><span class="mtd" id="MathJax-Span-188"><span class="mrow" id="MathJax-Span-189"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.17em, 4.301em, -1000em); top: -3.999em; left: 50%; margin-left: -1.585em;"><span class="mi" id="MathJax-Span-190" style="font-family: MathJax_Main;">sin</span><span class="mo" id="MathJax-Span-191"></span><span class="texatom" id="MathJax-Span-192" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-193"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.301em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-194" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-195"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-196" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-197" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -2.352em; left: 0em;"><span class="mtd" id="MathJax-Span-225"><span class="mrow" id="MathJax-Span-226"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -3.999em; left: 50%; margin-left: -0.139em;"><span class="mo" id="MathJax-Span-227" style="font-family: MathJax_Main;">⋮</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -0.952em; left: 0em;"><span class="mtd" id="MathJax-Span-246"><span class="mrow" id="MathJax-Span-247"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-248" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: 0.611em; left: 0em;"><span class="mtd" id="MathJax-Span-302"><span class="mrow" id="MathJax-Span-303"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-304" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 10.985em;"></span></span><span style="position: absolute; clip: rect(5.495em, 1004.12em, 15.769em, -1000em); top: -10.985em; left: 13.677em;"><span style="display: inline-block; position: relative; width: 4.116em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -8.672em; left: 0em;"><span class="mtd" id="MathJax-Span-93"><span class="mrow" id="MathJax-Span-94"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-95" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -7.272em; left: 0em;"><span class="mtd" id="MathJax-Span-130"><span class="mrow" id="MathJax-Span-131"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-132" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1004.12em, 4.301em, -1000em); top: -5.872em; left: 0em;"><span class="mtd" id="MathJax-Span-160"><span class="mrow" id="MathJax-Span-161"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1004.12em, 4.301em, -1000em); top: -3.999em; left: 50%; margin-left: -2.058em;"><span class="mo" id="MathJax-Span-162" style="font-family: MathJax_Main;">−</span><span class="mi" id="MathJax-Span-163" style="font-family: MathJax_Main; padding-left: 0.167em;">sin</span><span class="mo" id="MathJax-Span-164"></span><span class="texatom" id="MathJax-Span-165" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-166"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.301em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-167" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-168"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-169" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-170" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1003.28em, 4.301em, -1000em); top: -4.472em; left: 0em;"><span class="mtd" id="MathJax-Span-198"><span class="mrow" id="MathJax-Span-199"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.28em, 4.301em, -1000em); top: -3.999em; left: 50%; margin-left: -1.64em;"><span class="mi" id="MathJax-Span-200" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-201"></span><span class="texatom" id="MathJax-Span-202" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-203"><span style="display: inline-block; position: relative; width: 1.776em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1001.78em, 4.301em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-204" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-205"><span style="display: inline-block; position: relative; width: 0.898em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-206" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.469em;"><span class="mn" id="MathJax-Span-207" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -2.352em; left: 0em;"><span class="mtd" id="MathJax-Span-228"><span class="mrow" id="MathJax-Span-229"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -3.999em; left: 50%; margin-left: -0.139em;"><span class="mo" id="MathJax-Span-230" style="font-family: MathJax_Main;">⋮</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -0.952em; left: 0em;"><span class="mtd" id="MathJax-Span-249"><span class="mrow" id="MathJax-Span-250"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-251" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: 0.611em; left: 0em;"><span class="mtd" id="MathJax-Span-305"><span class="mrow" id="MathJax-Span-306"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-307" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 10.985em;"></span></span><span style="position: absolute; clip: rect(5.243em, 1001.15em, 14.95em, -1000em); top: -10.378em; left: 18.792em;"><span style="display: inline-block; position: relative; width: 1.282em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -8.672em; left: 0em;"><span class="mtd" id="MathJax-Span-96"><span class="mrow" id="MathJax-Span-97"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="texatom" id="MathJax-Span-98"><span class="mrow" id="MathJax-Span-99"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="mo" id="MathJax-Span-100" style="font-family: MathJax_Main;">⋯</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -7.272em; left: 0em;"><span class="mtd" id="MathJax-Span-133"><span class="mrow" id="MathJax-Span-134"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="texatom" id="MathJax-Span-135"><span class="mrow" id="MathJax-Span-136"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="mo" id="MathJax-Span-137" style="font-family: MathJax_Main;">⋯</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -5.872em; left: 0em;"><span class="mtd" id="MathJax-Span-171"><span class="mrow" id="MathJax-Span-172"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="texatom" id="MathJax-Span-173"><span class="mrow" id="MathJax-Span-174"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="mo" id="MathJax-Span-175" style="font-family: MathJax_Main;">⋯</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -4.472em; left: 0em;"><span class="mtd" id="MathJax-Span-208"><span class="mrow" id="MathJax-Span-209"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="texatom" id="MathJax-Span-210"><span class="mrow" id="MathJax-Span-211"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="mo" id="MathJax-Span-212" style="font-family: MathJax_Main;">⋯</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.327em, 1001.15em, 4.051em, -1000em); top: -2.352em; left: 0em;"><span class="mtd" id="MathJax-Span-231"><span class="mrow" id="MathJax-Span-232"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.327em, 1001.15em, 4.051em, -1000em); top: -3.999em; left: 50%; margin-left: -0.641em;"><span class="mo" id="MathJax-Span-233" style="font-family: MathJax_Main;">⋱</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -0.952em; left: 0em;"><span class="mtd" id="MathJax-Span-252"><span class="mrow" id="MathJax-Span-253"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="mo" id="MathJax-Span-254" style="font-family: MathJax_Main;">⋯</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: 0.611em; left: 0em;"><span class="mtd" id="MathJax-Span-308"><span class="mrow" id="MathJax-Span-309"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.537em, 1001.09em, 3.961em, -1000em); top: -3.999em; left: 50%; margin-left: -0.586em;"><span class="mo" id="MathJax-Span-310" style="font-family: MathJax_Main;">⋯</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 10.378em;"></span></span><span style="position: absolute; clip: rect(5.798em, 1004.91em, 16.413em, -1000em); top: -11.289em; left: 21.074em;"><span style="display: inline-block; position: relative; width: 4.908em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -8.672em; left: 0em;"><span class="mtd" id="MathJax-Span-101"><span class="mrow" id="MathJax-Span-102"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-103" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -7.272em; left: 0em;"><span class="mtd" id="MathJax-Span-138"><span class="mrow" id="MathJax-Span-139"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-140" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -5.872em; left: 0em;"><span class="mtd" id="MathJax-Span-176"><span class="mrow" id="MathJax-Span-177"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-178" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -4.472em; left: 0em;"><span class="mtd" id="MathJax-Span-213"><span class="mrow" id="MathJax-Span-214"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-215" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -2.352em; left: 0em;"><span class="mtd" id="MathJax-Span-234"><span class="mrow" id="MathJax-Span-235"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -3.999em; left: 50%; margin-left: -0.139em;"><span class="mo" id="MathJax-Span-236" style="font-family: MathJax_Main;">⋮</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1004.91em, 4.514em, -1000em); top: -0.952em; left: 0em;"><span class="mtd" id="MathJax-Span-255"><span class="mrow" id="MathJax-Span-256"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1004.91em, 4.514em, -1000em); top: -3.999em; left: 50%; margin-left: -2.454em;"><span class="mi" id="MathJax-Span-257" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-258"></span><span class="texatom" id="MathJax-Span-259" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-260"><span style="display: inline-block; position: relative; width: 3.403em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.4em, 4.514em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-261" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-262"><span style="display: inline-block; position: relative; width: 2.525em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-263" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.813em; left: 0.469em;"><span class="texatom" id="MathJax-Span-264"><span class="mrow" id="MathJax-Span-265"><span style="display: inline-block; position: relative; width: 1.981em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.93em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="texatom" id="MathJax-Span-266"><span class="mrow" id="MathJax-Span-267"><span style="display: inline-block; position: relative; width: 1.077em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.04em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-268" style="font-size: 70.7%; font-family: MathJax_Math-italic;">d<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.002em;"></span></span><span class="texatom" id="MathJax-Span-269"><span class="mrow" id="MathJax-Span-270"><span style="display: inline-block; position: relative; width: 0.354em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1000.32em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mo" id="MathJax-Span-271" style="font-size: 70.7%; font-family: MathJax_Main;">/</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mn" id="MathJax-Span-272" style="font-size: 70.7%; font-family: MathJax_Main;">2</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mo" id="MathJax-Span-273" style="font-size: 70.7%; font-family: MathJax_Main;">−</span><span class="mn" id="MathJax-Span-274" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1004.8em, 4.514em, -1000em); top: 0.611em; left: 0em;"><span class="mtd" id="MathJax-Span-311"><span class="mrow" id="MathJax-Span-312"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1004.8em, 4.514em, -1000em); top: -3.999em; left: 50%; margin-left: -2.399em;"><span class="mi" id="MathJax-Span-313" style="font-family: MathJax_Main;">sin</span><span class="mo" id="MathJax-Span-314"></span><span class="texatom" id="MathJax-Span-315" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-316"><span style="display: inline-block; position: relative; width: 3.403em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.4em, 4.514em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-317" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-318"><span style="display: inline-block; position: relative; width: 2.525em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-319" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.813em; left: 0.469em;"><span class="texatom" id="MathJax-Span-320"><span class="mrow" id="MathJax-Span-321"><span style="display: inline-block; position: relative; width: 1.981em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.93em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="texatom" id="MathJax-Span-322"><span class="mrow" id="MathJax-Span-323"><span style="display: inline-block; position: relative; width: 1.077em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.04em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-324" style="font-size: 70.7%; font-family: MathJax_Math-italic;">d<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.002em;"></span></span><span class="texatom" id="MathJax-Span-325"><span class="mrow" id="MathJax-Span-326"><span style="display: inline-block; position: relative; width: 0.354em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1000.32em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mo" id="MathJax-Span-327" style="font-size: 70.7%; font-family: MathJax_Main;">/</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mn" id="MathJax-Span-328" style="font-size: 70.7%; font-family: MathJax_Main;">2</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mo" id="MathJax-Span-329" style="font-size: 70.7%; font-family: MathJax_Main;">−</span><span class="mn" id="MathJax-Span-330" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 11.289em;"></span></span><span style="position: absolute; clip: rect(5.798em, 1005.74em, 16.413em, -1000em); top: -11.289em; left: 26.982em;"><span style="display: inline-block; position: relative; width: 5.743em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -8.672em; left: 0em;"><span class="mtd" id="MathJax-Span-104"><span class="mrow" id="MathJax-Span-105"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-106" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -7.272em; left: 0em;"><span class="mtd" id="MathJax-Span-141"><span class="mrow" id="MathJax-Span-142"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-143" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -5.872em; left: 0em;"><span class="mtd" id="MathJax-Span-179"><span class="mrow" id="MathJax-Span-180"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-181" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -4.472em; left: 0em;"><span class="mtd" id="MathJax-Span-216"><span class="mrow" id="MathJax-Span-217"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.181em, 1000.46em, 4.173em, -1000em); top: -3.999em; left: 50%; margin-left: -0.25em;"><span class="mn" id="MathJax-Span-218" style="font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -2.352em; left: 0em;"><span class="mtd" id="MathJax-Span-237"><span class="mrow" id="MathJax-Span-238"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -3.999em; left: 50%; margin-left: -0.139em;"><span class="mo" id="MathJax-Span-239" style="font-family: MathJax_Main;">⋮</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1005.74em, 4.514em, -1000em); top: -0.952em; left: 0em;"><span class="mtd" id="MathJax-Span-275"><span class="mrow" id="MathJax-Span-276"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1005.74em, 4.514em, -1000em); top: -3.999em; left: 50%; margin-left: -2.871em;"><span class="mo" id="MathJax-Span-277" style="font-family: MathJax_Main;">−</span><span class="mi" id="MathJax-Span-278" style="font-family: MathJax_Main; padding-left: 0.167em;">sin</span><span class="mo" id="MathJax-Span-279"></span><span class="texatom" id="MathJax-Span-280" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-281"><span style="display: inline-block; position: relative; width: 3.403em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.4em, 4.514em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-282" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-283"><span style="display: inline-block; position: relative; width: 2.525em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-284" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.813em; left: 0.469em;"><span class="texatom" id="MathJax-Span-285"><span class="mrow" id="MathJax-Span-286"><span style="display: inline-block; position: relative; width: 1.981em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.93em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="texatom" id="MathJax-Span-287"><span class="mrow" id="MathJax-Span-288"><span style="display: inline-block; position: relative; width: 1.077em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.04em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-289" style="font-size: 70.7%; font-family: MathJax_Math-italic;">d<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.002em;"></span></span><span class="texatom" id="MathJax-Span-290"><span class="mrow" id="MathJax-Span-291"><span style="display: inline-block; position: relative; width: 0.354em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1000.32em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mo" id="MathJax-Span-292" style="font-size: 70.7%; font-family: MathJax_Main;">/</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mn" id="MathJax-Span-293" style="font-size: 70.7%; font-family: MathJax_Main;">2</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mo" id="MathJax-Span-294" style="font-size: 70.7%; font-family: MathJax_Main;">−</span><span class="mn" id="MathJax-Span-295" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.142em, 1004.91em, 4.514em, -1000em); top: 0.611em; left: 0em;"><span class="mtd" id="MathJax-Span-331"><span class="mrow" id="MathJax-Span-332"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1004.91em, 4.514em, -1000em); top: -3.999em; left: 50%; margin-left: -2.454em;"><span class="mi" id="MathJax-Span-333" style="font-family: MathJax_Main;">cos</span><span class="mo" id="MathJax-Span-334"></span><span class="texatom" id="MathJax-Span-335" style="padding-left: 0.167em;"><span class="mrow" id="MathJax-Span-336"><span style="display: inline-block; position: relative; width: 3.403em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1003.4em, 4.514em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-337" style="font-family: MathJax_Math-italic;">m</span><span class="msubsup" id="MathJax-Span-338"><span style="display: inline-block; position: relative; width: 2.525em; height: 0px;"><span style="position: absolute; clip: rect(3.142em, 1000.46em, 4.161em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-339" style="font-family: MathJax_Math-italic;">θ</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.813em; left: 0.469em;"><span class="texatom" id="MathJax-Span-340"><span class="mrow" id="MathJax-Span-341"><span style="display: inline-block; position: relative; width: 1.981em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.93em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="texatom" id="MathJax-Span-342"><span class="mrow" id="MathJax-Span-343"><span style="display: inline-block; position: relative; width: 1.077em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1001.04em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-344" style="font-size: 70.7%; font-family: MathJax_Math-italic;">d<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.002em;"></span></span><span class="texatom" id="MathJax-Span-345"><span class="mrow" id="MathJax-Span-346"><span style="display: inline-block; position: relative; width: 0.354em; height: 0px;"><span style="position: absolute; clip: rect(3.317em, 1000.32em, 4.328em, -1000em); top: -3.999em; left: 0em;"><span class="mo" id="MathJax-Span-347" style="font-size: 70.7%; font-family: MathJax_Main;">/</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mn" id="MathJax-Span-348" style="font-size: 70.7%; font-family: MathJax_Main;">2</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span class="mo" id="MathJax-Span-349" style="font-size: 70.7%; font-family: MathJax_Main;">−</span><span class="mn" id="MathJax-Span-350" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 11.289em;"></span></span></span></span><span class="mo" id="MathJax-Span-351" style="vertical-align: 5.473em;"><span style="display: inline-block; position: relative; width: 0.667em; height: 0px;"><span style="position: absolute; font-family: MathJax_Size4; top: -2.845em; left: 0em;">⎤<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; font-family: MathJax_Size4; top: 5.802em; left: 0em;">⎦<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.668em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.136em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.604em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.072em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.46em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.992em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 1.524em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.057em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.589em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.121em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.653em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 4.185em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 4.717em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 11.441em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 11.441em;"></span></span></span><span style="display: inline-block; overflow: hidden; vertical-align: -5.124em; border-left: 0px solid; width: 0px; height: 10.758em;"></span></span></nobr><span class="MJX_Assistive_MathML MJX_Assistive_MathML_Block" role="presentation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mo>[</mo><mtable rowspacing="4pt" columnspacing="1em"><mtr><mtd><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>0</mn></msub></mrow></mtd><mtd><mo>−</mo><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>0</mn></msub></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mo>⋯</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>0</mn></msub></mrow></mtd><mtd><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>0</mn></msub></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mo>⋯</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>1</mn></msub></mrow></mtd><mtd><mo>−</mo><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>1</mn></msub></mrow></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mo>⋯</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>1</mn></msub></mrow></mtd><mtd><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mn>1</mn></msub></mrow></mtd><mtd><mrow class="MJX-TeXAtom-ORD"><mo>⋯</mo></mrow></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mo>⋮</mo></mtd><mtd><mo>⋮</mo></mtd><mtd><mo>⋮</mo></mtd><mtd><mo>⋮</mo></mtd><mtd><mo>⋱</mo></mtd><mtd><mo>⋮</mo></mtd><mtd><mo>⋮</mo></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mo>⋯</mo></mtd><mtd><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mi>d</mi><mrow class="MJX-TeXAtom-ORD"><mo>/</mo></mrow><mn>2</mn></mrow><mo>−</mo><mn>1</mn></mrow></msub></mrow></mtd><mtd><mo>−</mo><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mi>d</mi><mrow class="MJX-TeXAtom-ORD"><mo>/</mo></mrow><mn>2</mn></mrow><mo>−</mo><mn>1</mn></mrow></msub></mrow></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mo>⋯</mo></mtd><mtd><mi>sin</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mi>d</mi><mrow class="MJX-TeXAtom-ORD"><mo>/</mo></mrow><mn>2</mn></mrow><mo>−</mo><mn>1</mn></mrow></msub></mrow></mtd><mtd><mi>cos</mi><mo>⁡</mo><mrow class="MJX-TeXAtom-ORD"><mi>m</mi><msub><mi>θ</mi><mrow class="MJX-TeXAtom-ORD"><mrow class="MJX-TeXAtom-ORD"><mi>d</mi><mrow class="MJX-TeXAtom-ORD"><mo>/</mo></mrow><mn>2</mn></mrow><mo>−</mo><mn>1</mn></mrow></msub></mrow></mtd></mtr></mtable><mo>]</mo></mrow></math></span></span></div><script type="math/tex; mode=display" id="MathJax-Element-3">\begin{bmatrix} \cos{m\theta_0} & -\sin{m\theta_0} & 0 & 0 &{\cdots} & 0 & 0 \\ \sin{m\theta_0} & \cos{m\theta_0} & 0 & 0 &{\cdots} & 0 & 0 \\ 0 & 0 & \cos{m\theta_1} & -\sin{m\theta_1} &{\cdots} & 0 & 0 \\ 0 & 0 & \sin{m\theta_1} & \cos{m\theta_1} &{\cdots} & 0 & 0 \\ \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & 0 & 0 & \cdots & \cos{m\theta_{ {d/2}-1}} & -\sin{m\theta_{ {d/2}-1}}\\ 0 & 0 & 0 & 0 & \cdots & \sin{m\theta_{ {d/2}-1}} & \cos{m\theta_{ {d/2}-1}} \end{bmatrix}</script> <span class="MathJax_Preview" style="color: inherit; display: none;"></span><div class="MathJax_Display"><span class="MathJax MathJax_FullWidth" id="MathJax-Element-4-Frame" tabindex="0" data-mathml="<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot; display=&quot;block&quot;><mrow><mo>[</mo><mtable rowspacing=&quot;4pt&quot; columnspacing=&quot;1em&quot;><mtr><mtd><msub><mi>q</mi><mn>0</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>2</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>3</mn></msub></mtd></mtr><mtr><mtd><mo>&amp;#x22EE;</mo></mtd></mtr><mtr><mtd><msub><mi>q</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>d</mi><mo>&amp;#x2212;</mo><mn>2</mn></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mrow class=&quot;MJX-TeXAtom-ORD&quot;><mi>d</mi><mo>&amp;#x2212;</mo><mn>1</mn></mrow></msub></mtd></mtr></mtable><mo>]</mo></mrow></math>" role="presentation" style="position: relative;"><nobr aria-hidden="true"><span class="math" id="MathJax-Span-352" style="width: 100%; display: inline-block; min-width: 3.546em;"><span style="display: inline-block; position: relative; width: 100%; height: 0px; font-size: 102%;"><span style="position: absolute; clip: rect(5.575em, 1003.14em, 15.794em, -1000em); top: -10.934em; left: 0em; width: 100%;"><span class="mrow" id="MathJax-Span-353"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(5.575em, 1003.14em, 15.794em, -1000em); top: -10.934em; left: 50%; margin-left: -1.731em;"><span class="mrow" id="MathJax-Span-354"><span class="mo" id="MathJax-Span-355" style="vertical-align: 5.208em;"><span style="display: inline-block; position: relative; width: 0.667em; height: 0px;"><span style="position: absolute; font-family: MathJax_Size4; top: -2.845em; left: 0em;">⎡<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; font-family: MathJax_Size4; top: 5.273em; left: 0em;">⎣<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.668em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.136em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.603em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.071em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.461em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.994em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 1.526em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.058em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.591em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.123em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.655em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 4.187em; left: 0em;">⎢<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span class="mtable" id="MathJax-Span-356" style="padding-right: 0.167em; padding-left: 0.167em;"><span style="display: inline-block; position: relative; width: 1.794em; height: 0px;"><span style="position: absolute; clip: rect(5.578em, 1001.79em, 15.44em, -1000em); top: -10.58em; left: 0em;"><span style="display: inline-block; position: relative; width: 1.794em; height: 0px;"><span style="position: absolute; width: 100%; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -8.407em; left: 0em;"><span class="mtd" id="MathJax-Span-357"><span class="mrow" id="MathJax-Span-358"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -3.999em; left: 50%; margin-left: -0.437em;"><span class="msubsup" id="MathJax-Span-359"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-360" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="mn" id="MathJax-Span-361" style="font-size: 70.7%; font-family: MathJax_Main;">0</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -7.007em; left: 0em;"><span class="mtd" id="MathJax-Span-362"><span class="mrow" id="MathJax-Span-363"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -3.999em; left: 50%; margin-left: -0.437em;"><span class="msubsup" id="MathJax-Span-364"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-365" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="mn" id="MathJax-Span-366" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -5.607em; left: 0em;"><span class="mtd" id="MathJax-Span-367"><span class="mrow" id="MathJax-Span-368"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -3.999em; left: 50%; margin-left: -0.437em;"><span class="msubsup" id="MathJax-Span-369"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-370" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="mn" id="MathJax-Span-371" style="font-size: 70.7%; font-family: MathJax_Main;">2</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -4.207em; left: 0em;"><span class="mtd" id="MathJax-Span-372"><span class="mrow" id="MathJax-Span-373"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.88em, 4.345em, -1000em); top: -3.999em; left: 50%; margin-left: -0.437em;"><span class="msubsup" id="MathJax-Span-374"><span style="display: inline-block; position: relative; width: 0.875em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-375" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="mn" id="MathJax-Span-376" style="font-size: 70.7%; font-family: MathJax_Main;">3</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -2.307em; left: 0em;"><span class="mtd" id="MathJax-Span-377"><span class="mrow" id="MathJax-Span-378"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(2.547em, 1000.2em, 4.181em, -1000em); top: -3.999em; left: 50%; margin-left: -0.139em;"><span class="mo" id="MathJax-Span-379" style="font-family: MathJax_Main;">⋮</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.405em, 1001.79em, 4.359em, -1000em); top: -0.907em; left: 0em;"><span class="mtd" id="MathJax-Span-380"><span class="mrow" id="MathJax-Span-381"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1001.79em, 4.359em, -1000em); top: -3.999em; left: 50%; margin-left: -0.897em;"><span class="msubsup" id="MathJax-Span-382"><span style="display: inline-block; position: relative; width: 1.794em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-383" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="texatom" id="MathJax-Span-384"><span class="mrow" id="MathJax-Span-385"><span style="display: inline-block; position: relative; width: 1.273em; height: 0px;"><span style="position: absolute; clip: rect(3.357em, 1001.24em, 4.209em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-386" style="font-size: 70.7%; font-family: MathJax_Math-italic;">d<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.002em;"></span></span><span class="mo" id="MathJax-Span-387" style="font-size: 70.7%; font-family: MathJax_Main;">−</span><span class="mn" id="MathJax-Span-388" style="font-size: 70.7%; font-family: MathJax_Main;">2</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; width: 100%; clip: rect(3.405em, 1001.79em, 4.359em, -1000em); top: 0.501em; left: 0em;"><span class="mtd" id="MathJax-Span-389"><span class="mrow" id="MathJax-Span-390"><span style="display: inline-block; position: relative; width: 100%; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1001.79em, 4.359em, -1000em); top: -3.999em; left: 50%; margin-left: -0.897em;"><span class="msubsup" id="MathJax-Span-391"><span style="display: inline-block; position: relative; width: 1.794em; height: 0px;"><span style="position: absolute; clip: rect(3.405em, 1000.46em, 4.345em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-392" style="font-family: MathJax_Math-italic;">q<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.014em;"></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; top: -3.849em; left: 0.446em;"><span class="texatom" id="MathJax-Span-393"><span class="mrow" id="MathJax-Span-394"><span style="display: inline-block; position: relative; width: 1.273em; height: 0px;"><span style="position: absolute; clip: rect(3.357em, 1001.22em, 4.209em, -1000em); top: -3.999em; left: 0em;"><span class="mi" id="MathJax-Span-395" style="font-size: 70.7%; font-family: MathJax_Math-italic;">d<span style="display: inline-block; overflow: hidden; height: 1px; width: 0.002em;"></span></span><span class="mo" id="MathJax-Span-396" style="font-size: 70.7%; font-family: MathJax_Main;">−</span><span class="mn" id="MathJax-Span-397" style="font-size: 70.7%; font-family: MathJax_Main;">1</span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span><span style="display: inline-block; width: 0px; height: 10.58em;"></span></span></span></span><span class="mo" id="MathJax-Span-398" style="vertical-align: 5.208em;"><span style="display: inline-block; position: relative; width: 0.667em; height: 0px;"><span style="position: absolute; font-family: MathJax_Size4; top: -2.845em; left: 0em;">⎤<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="position: absolute; font-family: MathJax_Size4; top: 5.273em; left: 0em;">⎦<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.668em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -1.136em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.603em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: -0.071em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.461em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 0.994em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 1.526em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.058em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 2.591em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.123em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 3.655em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span><span style="font-family: MathJax_Size4; position: absolute; top: 4.187em; left: 0em;">⎥<span style="display: inline-block; width: 0px; height: 3.999em;"></span></span></span></span></span><span style="display: inline-block; width: 0px; height: 10.934em;"></span></span></span></span><span style="display: inline-block; width: 0px; height: 10.934em;"></span></span></span><span style="display: inline-block; overflow: hidden; vertical-align: -4.854em; border-left: 0px solid; width: 0px; height: 10.218em;"></span></span></nobr><span class="MJX_Assistive_MathML MJX_Assistive_MathML_Block" role="presentation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow><mo>[</mo><mtable rowspacing="4pt" columnspacing="1em"><mtr><mtd><msub><mi>q</mi><mn>0</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>2</mn></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mn>3</mn></msub></mtd></mtr><mtr><mtd><mo>⋮</mo></mtd></mtr><mtr><mtd><msub><mi>q</mi><mrow class="MJX-TeXAtom-ORD"><mi>d</mi><mo>−</mo><mn>2</mn></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>q</mi><mrow class="MJX-TeXAtom-ORD"><mi>d</mi><mo>−</mo><mn>1</mn></mrow></msub></mtd></mtr></mtable><mo>]</mo></mrow></math></span></span></div><script type="math/tex; mode=display" id="MathJax-Element-4">\begin{bmatrix} q_0\\ q_1 \\ q_2 \\ q_3 \\ \vdots \\ q_{d-2} \\ q_{d-1} \end{bmatrix}</script> 
    
   
 </span><span class="katex-html"><span class="base"><span class="strut" style="height: 9.06em; vertical-align: -4.28em;"></span><span class="minner"><span class="mopen"><span class="delimsizing mult"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height: 4.7499em;"><span class="" style="top: -6.7499em;"><span class="pstrut" style="height: 11em;"></span><span class="" style="width: 0.667em; height: 9em;"> 
          <svg width="0.667em" height="9.000em" viewBox="0 0 667 9000"> 
           <path d="M403 1759 V84 H666 V0 H319 V1759 v5400 v1759 h347 v-84

H403z M403 1759 V0 H319 V1759 v5400 v1759 h84z">
cosmθ0sinmθ00000sinmθ0cosmθ0000000cosmθ1sinmθ10000sinmθ1cosmθ1000000cosmθd/21sinmθd/210000sinmθd/21cosmθd/21





q0q1q2q3qd2qd1</span

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值