⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainsimulation.m

📁 标准GPS星座的仿真程序。注:采用24颗卫星
💻 M
📖 第 1 页 / 共 3 页
字号:
              end
              
           elseif n == 11
              p8=k;
              [a8 b8]=size(p8);
             
              for i7=1:a8
                  
                  for i8=1:b8
                      w8(i7,i8)=g(p8(i7,i8));
                  end
                  
              end
              
            elseif n ==12
                w9=[g(1);g(2);g(3);g(4);g(5);g(6);g(7);g(8);g(9);g(10);g(12)];
              
           end 
           
         for i5=1:b
               
               for i6=1:a
                   x5=X(1,g(k(i6,i5)))-XJ;
                   y5=X(2,g(k(i6,i5)))-YJ;
                   z5=X(3,g(k(i6,i5)))-ZJ;
                   x6=x5/ S(k(i6,i5));
                   y6=y5/ S(k(i6,i5));
                   z6=z5/ S(k(i6,i5));
                   B(:,i6)=[x6,y6,z6,-1]';
               end
               
               A=B';
               Q=inv(A'*A);
               r=r+1;
               x7=Q(1,1);
               y7=Q(2,2);
               z7=Q(3,3);
               PDOP(r)=sqrt(x7+y7+z7);
               TDOP(r)=sqrt(Q(4,4));
               GDOP(r)=sqrt(PDOP(r)^2+TDOP(r)^2);
           end
           
       end
   case 13
       for i4=1:c
          sa(i4)=i4;
       end
       
       for n=4:13
           k=combinesingle(sa,n);
           [a b]=size(k);
           
           if n == 4
              p1=k;
              [a1 b1]=size(p1);
              
              for i7=1:a1
                  
                  for i8=1:b1
                      w1(i7,i8)=g(p1(i7,i8));
                  end
                  
              end
              
           elseif n == 5 
              p2=k;
              [a2 b2]=size(p2);
              
              for i7=1:a2
                 
                  for i8=1:b2
                      w2(i7,i8)=g(p2(i7,i8));
                  end
                  
              end
              
           elseif n == 6
              p3=k;
             [a3 b3]=size(p3);
              
             for i7=1:a3
                  
                 for i8=1:b3
                      w3(i7,i8)=g(p3(i7,i8));
                 end
                  
             end
              
           elseif n == 7 
              p4=k;
              [a4 b4]=size(p4);
              
              for i7=1:a4
                  
                  for i8=1:b4
                      w4(i7,i8)=g(p4(i7,i8));
                  end
                  
              end
              
           elseif n == 8 
              p5=k;
              [a5 b5]=size(p5);
             
              for i7=1:a5
                  
                  for i8=1:b5
                      w5(i7,i8)=g(p5(i7,i8));
                  end
                  
              end
              
           elseif n == 9
              p6=k;
              [a6 b6]=size(p6);
              for i7=1:a6
                  for i8=1:b6
                      w6(i7,i8)=g(p6(i7,i8));
                  end
              end
           elseif n == 10
              p7=k;
              [a7 b7]=size(p7);
              
              for i7=1:a7
                  
                  for i8=1:b7
                      w7(i7,i8)=g(p7(i7,i8));
                  end
                  
              end
              
           elseif n == 11
              p8=k;
              [a8 b8]=size(p8);
              
              for i7=1:a8
                  
                  for i8=1:b8
                      w8(i7,i8)=g(p8(i7,i8));
                  end
                  
              end
              
           elseif n == 12
              p9=k;
              [a9 b9]=size(p9);
             
              for i7=1:a9
                  
                  for i8=1:b9
                      w9(i7,i8)=g(p9(i7,i8));
                  end
                  
              end
              
            elseif n ==13
                w9=[g(1);g(2);g(3);g(4);g(5);g(6);g(7);g(8);g(9);g(10);g(12);g(13)];
              
           end 
           
           for i5=1:b
               
               for i6=1:a
                   x5=X(1,g(k(i6,i5)))-XJ;
                   y5=X(2,g(k(i6,i5)))-YJ;
                   z5=X(3,g(k(i6,i5)))-ZJ;
                   x6=x5/ S(k(i6,i5));
                   y6=y5/ S(k(i6,i5));
                   z6=z5/ S(k(i6,i5));
                   B(:,i6)=[x6,y6,z6,-1]';
               end
               
               A=B';
               Q=inv(A'*A);
               r=r+1;
               x7=Q(1,1);
               y7=Q(2,2);
               z7=Q(3,3);
               PDOP(r)=sqrt(x7+y7+z7);
               TDOP(r)=sqrt(Q(4,4));
              GDOP(r)=sqrt(PDOP(r)^2+TDOP(r)^2);
           end
           
       end
   case 14
       for i4=1:c
          sa(i4)=i4;
       end
       
       for n=4:14
           k=combinesingle(sa,n);
           [a b]=size(k);
           
           if n == 4
              p1=k;
              [a1 b1]=size(p1);
             
              for i7=1:a1
                  
                  for i8=1:b1
                      w1(i7,i8)=g(p1(i7,i8));
                  end
                  
              end
              
           elseif n == 5 
              p2=k;
              [a2 b2]=size(p2);
              
              for i7=1:a2
                 
                  for i8=1:b2
                      w2(i7,i8)=g(p2(i7,i8));
                  end
                  
              end
              
           elseif n == 6
              p3=k;
             [a3 b3]=size(p3);
             
             for i7=1:a3
                  
                 for i8=1:b3
                      w3(i7,i8)=g(p3(i7,i8));
                 end
                  
             end
              
           elseif n == 7 
              p4=k;
              [a4 b4]=size(p4);
              
              for i7=1:a4
                 
                  for i8=1:b4
                      w4(i7,i8)=g(p4(i7,i8));
                  end
                  
              end
              
           elseif n == 8 
              p5=k;
              [a5 b5]=size(p5);
              
              for i7=1:a5
                  
                  for i8=1:b5
                      w5(i7,i8)=g(p5(i7,i8));
                  end
                  
              end
              
           elseif n == 9
              p6=k;
              [a6 b6]=size(p6);
              
              for i7=1:a6
                 
                  for i8=1:b6
                      w6(i7,i8)=g(p6(i7,i8));
                  end
                  
              end
              
           elseif n == 10
              p7=k;
              [a7 b7]=size(p7);
              
              for i7=1:a7
                  
                  for i8=1:b7
                      w7(i7,i8)=g(p7(i7,i8));
                  end
                  
              end
              
           elseif n == 11
              p8=k;
              [a8 b8]=size(p8);
              
              for i7=1:a8
                  
                  for i8=1:b8
                      w8(i7,i8)=g(p8(i7,i8));
                  end
                  
              end
              
           elseif n == 12
              p9=k;
              [a9 b9]=size(p9);
             
              for i7=1:a9
                  
                  for i8=1:b9
                      w9(i7,i8)=g(p9(i7,i8));
                  end
                  
              end
              
              elseif n == 13
              p10=k;
              [a10 b10]=size(p10);
              
              for i7=1:a10
                  
                  for i8=1:b10
                      w9(i7,i8)=g(p10(i7,i8));
                  end
                  
              end
              
            elseif n ==14
                w9=[g(1);g(2);g(3);g(4);g(5);g(6);g(7);g(8);g(9);g(10);g(12);g(13);g(14)];
              
           end 
           
          for i5=1:b
               
               for i6=1:a
                   x5=X(1,g(k(i6,i5)))-XJ;
                   y5=X(2,g(k(i6,i5)))-YJ;
                   z5=X(3,g(k(i6,i5)))-ZJ;
                   x6=x5/ S(k(i6,i5));
                   y6=y5/ S(k(i6,i5));
                   z6=z5/ S(k(i6,i5));
                   B(:,i6)=[x6,y6,z6,-1]';
               end
               
               A=B';
               Q=inv(A'*A);
               r=r+1;
               x7=Q(1,1);
               y7=Q(2,2);
               z7=Q(3,3);
               PDOP(r)=sqrt(x7+y7+z7);
               TDOP(r)=sqrt(Q(4,4));
              GDOP(r)=sqrt(PDOP(r)^2+TDOP(r)^2);
          end
           
       end
   
       
      
  end
  
 minP=PDOP(1);
 for i7= 2 : r
     
     if PDOP(r)  <  minP
        minP = PDOP(r);
     end  
     
end  

 minT=TDOP(1);
 for i7= 2 : r
     
     if TDOP(r)  <  minT
        minT = TDOP(r);
     end  
     
end        

 minG=GDOP(1);
 for i7= 2 : r
     
     if GDOP(r)  <  minG
        minG = GDOP(r);
     end  
     
 end
 P(i9)=minP;
 T(i9)=minT;
 G(i9)=minG;
 i9=i9+1;

 t1=t1+300;
 
 if t1 <= 86400
    t2(i9)=t1;
end
 
end
b1=0;
b2=0;
b3=0;
b4=0;

for i10=1:289
    
    if C(i10) == 6
       b1=b1+1;
   elseif  C(i10) == 7
       b2=b2+1;
   elseif  C(i10) == 8
       b3=b3+1;
   elseif  C(i10) == 9
       b4=b4+1;
   end
   
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -