Home PC Games Linux Windows Database Network Programming Server Mobile  
           
  Home \ Programming \ Python implementation Bursa transition model     - Docker Build a Java compiler environment (Linux)

- MongoDB simple replication configuration (Database)

- Linux system file directory structure Introduction (Linux)

- MySQL migration tool used in the production environment (Database)

- Android imageView in the Src and Background (Programming)

- ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], [] (Database)

- LVM mirrored logical volume to achieve (Linux)

- MariaDB phpMyAdmin installation and configuration issues to resolve under CentOS7 (Database)

- Android Studio 1.0.2 set the memory size (Linux)

- Use Visual Studio Code Development TypeScript (Linux)

- Ubuntu Linux use MAC binding against ARP attacks (Linux)

- Ubuntu Gitolite management Git Server code base permissions (Server)

- Use UDEV SCSI Rules configured ASM on Oracle Linux 5 and 6 (Database)

- Ubuntu iptables prevent IP attacks (Linux)

- Configuring s3c-linux-2.6.28.6-Real6410 appears Unable to find the QT3 installation (Linux)

- C # assembly calls across constants, variables and functions (Programming)

- How to Check notebook CPU temperature in Ubuntu (Linux)

- Github inventory objects Algorithm (Linux)

- Linux common commands MEMO (Linux)

- The next key to install Linux bash script PowerShell (Linux)

 
         
  Python implementation Bursa transition model
     
  Add Date : 2018-11-21      
         
         
         
  The core issue

1. Because it is the same accuracy and mutually independent observations, final weight matrix should be used for the matrix P (3m * 3m), m is the number of known points.

p = np.eye (n) # Unit weight matrix 3n * 3n

2. The program implements all known points of XYZ coordinate read into the corresponding columns of the matrix, the coefficient matrix B also need this operation (V = BX-L). When numpy process can be expressed as:

for i in range (vector_count):
        matrix_source.append (vector3d_list_source [i] .X)
        matrix_source.append (vector3d_list_source [i] .Y)
        matrix_source.append (vector3d_list_source [i] .Z)
        matrix_dest.append (vector3d_list_dest [i] .X)
        matrix_dest.append (vector3d_list_dest [i] .Y)
        matrix_dest.append (vector3d_list_dest [i] .Z)
        matrix_B.append ([1, 0, 0, 0, -vector3d_list_source [i] .Z, vector3d_list_source [i] .Y, vector3d_list_source [i] .X])
        matrix_B.append ([0, 1, 0, vector3d_list_source [i] .Z, 0, -vector3d_list_source [i] .X, vector3d_list_source [i] .Y])
        matrix_B.append ([0, 0, 1, -vector3d_list_source [i] .Y, vector3d_list_source [i] .X, 0, vector3d_list_source [i] .Z])
    matrix_source = np.array (matrix_source) .reshape (1, -1) .T
    matrix_dest = np.array (matrix_dest) .reshape (1, -1) .T
    matrix_B = np.array (matrix_B)
    L = matrix_dest - matrix_source

3. The value of the parameter matrix (column matrix)

X = np.dot (np.linalg.inv (np.dot (matrix_B.T, matrix_B)), np.dot (matrix_B.T, L))

4. The error equation

V = np.dot (matrix_B, X) - L # error equation

5. Accuracy Assessment

standard_deviation = math.sqrt (np.dot (np.dot (V.T, p), V) / r) # conversion error
     
         
         
         
  More:      
 
- RCU lock in the evolution of the Linux kernel (Linux)
- Use Tails 1.4 Linux system to protect the privacy and anonymity (Linux)
- Install Kali Linux via PXE network (Linux)
- C ++ How to determine the types of constants (Programming)
- using the ssh command to check the socket / Network Connections (Linux)
- Extended VMware Ubuntu root partition size (Linux)
- Oracle set the timer task JOB scheduler to execute stored procedures or PL / SQL code block (Database)
- Object-C in the preparation of multi-parameter function parameter is omitted (Programming)
- Struts2 : combobox label use (Programming)
- C # C ++ Java interface type conversion (Programming)
- Struts2 configure a static resource files without Struts processing (regular match) (Programming)
- ORA-12547: TNS: lost contact error Solution (Database)
- Java Generics Introduction --HashMap summary (Programming)
- Learning and Practice (Linux)
- How do I upgrade to Ubuntu 15.04 (Beta) (Linux)
- How to use Linux iptables tool for network sharing (Linux)
- Swift string common method (Programming)
- How to find on Linux and delete duplicate files: FSlint (Linux)
- Sublime Text 3 practical functions and shortcut keys used to collect (Linux)
- RHEL (RedHat) 6.3 using EPEL Yum source (Linux)
     
           
     
  CopyRight 2002-2022 newfreesoft.com, All Rights Reserved.