CTRLIB : 座標変換/回転

概要

座標変換に関するサブルーチンパッケージ. 変換する座標系はルーチン名の末尾2文字に略号であらわされる. ここで扱う座標系の略号は以下の通り.

                                                          
                   次元   英語名                    略号  
                                                          
  直角座標         2      cartesian coordinates     C     
                                                          
  極座標           2      polar coordinates         P     
                                                          
  楕円座標         2      elliptic coordinates      E     
                                                          
  直角双曲線座標   2      rectangular hyperbolic    H     
                                                          
  双極座標         2      bipolar coordinates       B     
                                                          
  直角座標         3      cartesian coordinates     C     
                                                          
  球座標           3      spherical coordinates     S     
                                                          
  楕円面座標       3      ellipsoidal               E     
                          coordinates                     
                                                          
放物線座標との変換は直角双曲線座標の逆変換である.

角度に関する引数の単位はすべてラジアンである.

サブルーチンのリスト

                                                                   
  CT2PC(R,THETA,X,Y)         2次元極座標を直角座標に変換する.     
                                                                   
  CT2CP(X,Y,R,THETA)         直角座標を2次元極座標に変換する.     
                                                                   
  CT2EC(U,V,X,Y)             楕円座標を直角座標に変換する.        
                                                                   
  CT2BC(U,V,X,Y)             双極座標を直角座標に変換する.        
                                                                   
  CT2HC(U,V,X,Y)             直角双曲線座標を直角座標に変換する.  
                                                                   
  CT2CH(X,Y,U,V)             直角座標を直角双曲線座標に変換する.  
                                                                   
  CT3SC(R,THETA,PHI,X,Y,Z)   3次元球面座標を直角座標に変換する.   
                                                                   
  CT3CS(X,Y,Z,R,THETA,PHI)   直角座標を3次元球面座標に変換する.   
                                                                   

                                                                       
  CR2C(THETA,X0,Y0,X1,Y1)                   2次元直角座標を回転する.  
                                                                       
  CR3C(THETA,PHI,PSI,X0,Y0,Z0,X1,Y1,Z1)     3次元直角座標を回転する.  
                                                                       
  CR3S                                      球面座標を回転する.       
  (THETA,PHI,PSI,THETA0,PHI0,THETA1,PHI1)                              
                                                                       

サブルーチンの説明

CT2PC/CT2CP

  1. 機能
    2次元極座標と直角座標の変換をする.
  2. 呼び出し方法
    CALL CT2PC(R,THETA,X,Y)
    CALL CT2CP(X,Y,R,THETA)
  3. パラメーターの説明
                                  
      X,Y       (R)   直角座標.  
                                  
      R,        (R)   極座標.    
      THETA                       
                                  
    
  4. 備考
    1. 定義式
                          
        x   =   r         
                (θ)    
                          
        y   =   r         
                (θ)    
                          
      

CT2EC

  1. 機能
    楕円座標と直角座標の変換をする.
  2. 呼び出し方法
    CALL CT2EC(U,V,X,Y)
  3. パラメーターの説明
                              
      X,    (R)   直角座標.  
      Y                       
                              
      U,    (R)   楕円座標.  
      V                       
                              
    
  4. 備考
    1. 定義式
                        
        x   =   (u)(v)  
                        
        y   =   (u)(v)  
                        
      

CT2BC

  1. 機能
    双極座標と直角座標の変換をする.
  2. 呼び出し方法
    CALL CT2BC(U,V,X,Y)
  3. パラメーターの説明
                              
      X,    (R)   直角座標.  
      Y                       
                              
      U,    (R)   双極座標.  
      V                       
                              
    
  4. 備考
    1. 定義式
                              
        x   =   (v)(v) + (u)  
                              
        y   =   (u)(v) + (u)  
                              
      

    2. (v) + (u) = 0 のとき,内部変数 'RUNDEF'で決まる不定を示す値(初期値は-999)を返す.

CT2HC/CT2CH

  1. 機能
    直角双曲線座標と直角座標の変換をする.
  2. 呼び出し方法
    CALL CT2HC(U,V,X,Y)
    CALL CT2CH(X,Y,U,V)
  3. パラメーターの説明
                                    
      X,    (R)   直角座標.        
      Y                             
                                    
      U,    (R)   直角双曲線座標.  
      V                             
                                    
    
  4. 備考
    1. 定義式
                           
        u   =   x^2 -      
                y^2        
                           
        v   =   2xy        
                           
      

    2. X,YU,V を入れ換えると, 放物線座標と直角座標の変換となる.

CT3CS/CT3SC

  1. 機能
    3次元球面座標と直角座標の変換をする.
  2. 呼び出し方法
    CALL CT3SC(R,THETA,PHI,X,Y,Z)
    CALL CT3CS(X,Y,Z,R,THETA,PHI)
  3. パラメーターの説明
                                      
      X,Y,Z         (R)   直角座標.  
                                      
      R,THETA,      (R)   極座標.    
      PHI                             
                                      
    
  4. 備考
    1. 定義式
                                
        x   =   r               
                (θ)(φ)    
                                
        y   =   r               
                (θ)(φ)    
                                
        z   =   r (θ)        
                                
      

CR2C

  1. 機能
    2次元直角座標を回転する.
  2. 呼び出し方法
    CALL CR2C(THETA,X0,Y0,X1,Y1)
  3. パラメーターの説明
                                      
      THETA   (R)   回転角.          
                                      
      X0,     (R)   回転前の座標値.  
      Y0                              
                                      
      X1,     (R)   回転後の座標値.  
      Y1                              
                                      
    
  4. 備考
    1. 定義式
                                          
        x_1   =   (θ)x_0 + (θ)y_0   
                                          
        y_1   =   -(θ)x_0 +            
                  (θ)y_0               
                                          
      

CR3C

  1. 機能
    3次元直角座標を回転する.
  2. 呼び出し方法
    CALL CR3C(THETA,PHI,PSI,X0,Y0,Z0,X1,Y1,Z1)
  3. パラメーターの説明
                                                          
      THETA,PHI,      (R)   Euler の回転角 (θ, φ, ψ)   
      PSI                   .                             
                                                          
      X0,Y0,Z0        (R)   回転前の座標値.              
                                                          
      X1,Y1,Z1        (R)   回転後の座標値.              
                                                          
    
  4. 備考
    1. 定義式 ±atrix x_1 y_1 z_1 = ±atrix φ θ ψ - φ ψ, & φ θ ψ + φ ψ, & - θ ψ - φ θ ψ - φ ψ, & - φ θ ψ + φ ψ, & θ ψ φ θ, & φ θ, & θ ±atrix x_0 y_0 z_0
    2. Euler の角 (θ, φ, ψ) で回転させる とは,z軸の回りに φ 回転させ, y軸の回りに θ 回転させた後に, z軸の回りに ψ 回転させるのに等しい.
    3. Euler の角については,数学辞典などを参照のこと.
    4. 座標軸ではなく,座標値を(θ, φ, ψ)だけ 回転させるには
      CALL CR3C(-THETA,-PSI,-PHI,X0,Y0,Z0,X1,Y1,Z1) とする.

CR3S

  1. 機能
    球面座標を回転する.
  2. 呼び出し方法
    CALL CR3S(THETA,PHI,PSI,THETA0,PHI0,THETA1,PHI1)
  3. パラメーターの説明
                                                          
      THETA,PHI,      (R)   Euler の回転角 (θ, φ, ψ)   
      PSI                   .                             
                                                          
      THETA0,PHI0     (R)   回転前の座標値.              
                                                          
      THETA1,PHI1     (R)   回転後の座標値.              
                                                          
    
  4. 備考
    1. なし.


Back to Main


Latex Source


地球流体電脳倶楽部 : 95/6/9 (Version 5.0)

NUMAGUTI Atusi <a1n@gfdl.gov>
Last Modified: Thu Aug 31 13:00:27 EDT 1995