From 1b3b07a7f62e351da7467a60edfae69dbcd1afb8 Mon Sep 17 00:00:00 2001 From: bisnsh Date: Mon, 17 Nov 2025 11:16:02 +0800 Subject: [PATCH] 20251117 --- difun.m | 8 ++++++ dms2mat.m | 7 ++++++ dms2rad.m | 2 ++ jianjiepingcha.m | 23 ++++++++++++++++++ jjpc.m | 11 +++++++++ jjpcs.m | 3 +++ lab1.m | 13 ++++++++++ lab1/exercise1.m | 59 +++++++++++++++++++++++++++++++++++++++++++++ lab2/dtor.m | 7 ++++++ lab2/exercise2.m | 25 +++++++++++++++++++ lab2/exercise2.mlx | Bin 0 -> 4268 bytes lab2/exercise2_5.m | 14 +++++++++++ lab2/exercise2_6.m | 16 ++++++++++++ lab2/exercise2_7.m | 16 ++++++++++++ lab2/exercise2_9.m | 3 +++ lab2/fn.m | 20 +++++++++++++++ lab2/pmzbfs.m | 10 ++++++++ lab2/rad2deg.m | 7 ++++++ lab3/exercise3_1.m | 8 ++++++ lab3/exercise3_2.m | 6 +++++ lab3/exercise3_3.m | 7 ++++++ lab3/exercise3_4.m | 10 ++++++++ lab3/lab3.m | 42 ++++++++++++++++++++++++++++++++ lab3/nikon.txt | 7 ++++++ lab3/zhuanhuan.txt | 9 +++++++ mat2dms.m | 5 ++++ num2p.m | 8 ++++++ qwe.mat | Bin 0 -> 375 bytes rad2dms.m | 2 ++ tiaojianpingcha.m | 31 ++++++++++++++++++++++++ tjpc.m | 12 +++++++++ ttry.m | 7 ++++++ untitled3.m | 10 ++++++++ untitled5.m | 30 +++++++++++++++++++++++ veryfun.m | 16 ++++++++++++ 35 files changed, 454 insertions(+) create mode 100644 difun.m create mode 100644 dms2mat.m create mode 100644 dms2rad.m create mode 100644 jianjiepingcha.m create mode 100644 jjpc.m create mode 100644 jjpcs.m create mode 100644 lab1.m create mode 100644 lab1/exercise1.m create mode 100644 lab2/dtor.m create mode 100644 lab2/exercise2.m create mode 100644 lab2/exercise2.mlx create mode 100644 lab2/exercise2_5.m create mode 100644 lab2/exercise2_6.m create mode 100644 lab2/exercise2_7.m create mode 100644 lab2/exercise2_9.m create mode 100644 lab2/fn.m create mode 100644 lab2/pmzbfs.m create mode 100644 lab2/rad2deg.m create mode 100644 lab3/exercise3_1.m create mode 100644 lab3/exercise3_2.m create mode 100644 lab3/exercise3_3.m create mode 100644 lab3/exercise3_4.m create mode 100644 lab3/lab3.m create mode 100644 lab3/nikon.txt create mode 100644 lab3/zhuanhuan.txt create mode 100644 mat2dms.m create mode 100644 num2p.m create mode 100644 qwe.mat create mode 100644 rad2dms.m create mode 100644 tiaojianpingcha.m create mode 100644 tjpc.m create mode 100644 ttry.m create mode 100644 untitled3.m create mode 100644 untitled5.m create mode 100644 veryfun.m diff --git a/difun.m b/difun.m new file mode 100644 index 0000000..8a1b267 --- /dev/null +++ b/difun.m @@ -0,0 +1,8 @@ +function y=difun(x) +if x<-pi + y=-x-pi +elseif x>-pi && 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 length(t) + ind=1; + end + j=j+1; + end + t(ind)=[] + ind=ind-1; + j=1; + a=a+1; +end +t diff --git a/lab2/pmzbfs.m b/lab2/pmzbfs.m new file mode 100644 index 0000000..0bef890 --- /dev/null +++ b/lab2/pmzbfs.m @@ -0,0 +1,10 @@ +function [raf,jl]=pmzbfs(x1,y1,x2,y2) +detx=x2-x1;dety=y2-y1; +faw1=atan(dety/detx); +j1=sqrt(detx*detx+dety*dety); +if detx<0 + raf=faw1+pi; +end +if (detx>0)*(det<0) + raf=faw1+2*pi; +end \ No newline at end of file diff --git a/lab2/rad2deg.m b/lab2/rad2deg.m new file mode 100644 index 0000000..b7a318f --- /dev/null +++ b/lab2/rad2deg.m @@ -0,0 +1,7 @@ +function jdeg=rad2deg(rad) +rad=rad*180/pi; +deg=fix(rad); +xsbf=(rad-deg)*60; +degf=fix(xsbf); +degm=(xsbf-degf)*60; +jdeg=deg+degf/100.0+degm/10000.0; \ No newline at end of file diff --git a/lab3/exercise3_1.m b/lab3/exercise3_1.m new file mode 100644 index 0000000..6d4344a --- /dev/null +++ b/lab3/exercise3_1.m @@ -0,0 +1,8 @@ +% 第一题 + +A=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10]; +B=[4;-3;9;-8]; +% 系数矩阵的秩 +rank(A) +% 方程的解 +C = A\B \ No newline at end of file diff --git a/lab3/exercise3_2.m b/lab3/exercise3_2.m new file mode 100644 index 0000000..6f4b642 --- /dev/null +++ b/lab3/exercise3_2.m @@ -0,0 +1,6 @@ +% 练习3 第二题 +x=-10:1:10; +y=-10:1:10; +[X,Y]=meshgrid(x,y); +Z=sin(sqrt(X.^2+Y.^2))./(sqrt(X.^2+Y.^2)); +surf(X,Y,Z) \ No newline at end of file diff --git a/lab3/exercise3_3.m b/lab3/exercise3_3.m new file mode 100644 index 0000000..c150458 --- /dev/null +++ b/lab3/exercise3_3.m @@ -0,0 +1,7 @@ +num=[1]; +den=[1 2 2 1]; +sys=tf(num,den); +figure(1); pzmap(sys); title('零极点图'); +figure(2); impulse(sys); +w=0:0.1:10*pi; +figure(3); freqs(num,den,w) \ No newline at end of file diff --git a/lab3/exercise3_4.m b/lab3/exercise3_4.m new file mode 100644 index 0000000..8768c19 --- /dev/null +++ b/lab3/exercise3_4.m @@ -0,0 +1,10 @@ +subplot(2,2,2); +x=-pi/2:pi/10:pi/2; +y=sqrt(cos(x)); +plot(x,y); +subplot(2,2,3); +x=-2:0.1:2; +y=-4:0.1:4; +[x,y]=meshgrid(x,y); +z=x.^2/4+y.^2/16; +surf(x,y,z) \ No newline at end of file diff --git a/lab3/lab3.m b/lab3/lab3.m new file mode 100644 index 0000000..1b5841b --- /dev/null +++ b/lab3/lab3.m @@ -0,0 +1,42 @@ +% 实验3 +% 读取数据 +[filename1,p1]=uigetfile('*.txt', '选择尼康全站仪坐标文件名'); +fp=fopen(strcat(p1,filename1),'r'); +i=1;bss=[]; +while ~feof(fp) + line=fgetl(fp); + data=findstr(line,','); + bss(i).dh=line(1:data(1)-1); + bss(i).x=str2num(line(data(1)+1:data(2)-1)); + bss(i).y=str2num(line(data(2)+1:data(3)-1)); + bss(i).h=str2num(line(data(3)+1:data(4)-1)); + bss(i).dm=line(data(4)+1:end); + i=i+1; +end +fclose(fp); + +% 计算国家坐标系的坐标 +a=3976223.453;b=39512553.524;rad=deg2rad(0.433267); +c=cos(rad);d=-sin(rad);lmd=1.000034336; +m=i-1;gjzb=[]; +for i=1:m + gjzb(i).dh=bss(i).dh; + gjzb(i).dm=bss(i).dm; + gjzb(i).h=bss(i).h; + gjzb(i).x=a+lmd*(c*bss(i).x-d*bss(i).y); + gjzb(i).y=b+lmd*(d*bss(i).x+c*bss(i).y); +end + +% 输出数据 +[filename2,p2]=uigetfile('*.txt', '输出文件'); +fn=fopen(strcat(p2,filename2),'w'); +fprintf(fn,'%s\n\n',' 点名 X(m) Y(m) H(mm) code'); +fclose(fp);fn=fopen(strcat(p2,filename2),'a'); +for i=1:m + fprintf(fn,'%8s', gjzb(i).dh); + fprintf(fn,'%15.3f', gjzb(i).x); + fprintf(fn,'%16.3f', gjzb(i).y); + fprintf(fn,'%10.3f', gjzb(i).h); + fprintf(fn,'%8s\n', strcat(' ',gjzb(i).dm)); +end +fclose(fn); \ No newline at end of file diff --git a/lab3/nikon.txt b/lab3/nikon.txt new file mode 100644 index 0000000..fa7a74a --- /dev/null +++ b/lab3/nikon.txt @@ -0,0 +1,7 @@ +3,49510.3110,80362.3190,405.8240,s50 +63,49488.9080,80426.0080,408.8490,S77 +164,49461.2960,80462.3610,408.9950,S77 +165,49457.2500,80485.8770,409.4490,S81 +166,49476.6650,80395.8870,408.1090,S66 +167,49475.1380,80398.7300,408.1570,S77 +298,49465.2360,80593.9700,415.1290,S99 \ No newline at end of file diff --git a/lab3/zhuanhuan.txt b/lab3/zhuanhuan.txt new file mode 100644 index 0000000..f9ff4c0 --- /dev/null +++ b/lab3/zhuanhuan.txt @@ -0,0 +1,9 @@ + 点名 X(m) Y(m) H(mm) code + + 3 4026749.416 39592285.024 405.824 s50 + 63 4026728.820 39592348.981 408.849 S77 + 164 4026701.670 39592385.683 408.995 S77 + 165 4026697.922 39592409.249 409.449 S81 + 166 4026716.196 39592319.017 408.109 S66 + 167 4026714.706 39592321.879 408.157 S77 + 298 4026707.277 39592517.236 415.129 S99 diff --git a/mat2dms.m b/mat2dms.m new file mode 100644 index 0000000..8172cb2 --- /dev/null +++ b/mat2dms.m @@ -0,0 +1,5 @@ +function dmsv=mat2dms(D) +[l,c]=size(D); +for i=1:l + dmsv(i)=D(i,1)+D(1,2)/60+D(i,3)/3600; +end \ No newline at end of file diff --git a/num2p.m b/num2p.m new file mode 100644 index 0000000..800ed33 --- /dev/null +++ b/num2p.m @@ -0,0 +1,8 @@ +function a=num2p(n) +strr=num2str(n); +index=size(strr); +indexx=index(2); +a=[]; +for k=indexx-1:-1:0 + a=[a rem(fix(n/(10^k)),10)]; +end diff --git a/qwe.mat b/qwe.mat new file mode 100644 index 0000000000000000000000000000000000000000..ecb75a862600b78ba8efd830613c0e4d1f88bfcc GIT binary patch literal 375 zcmeZu4DoSvQZUssQ1EpO(M`+DN!3vZ$Vn_o%P-2cQV4Jk_w+L}(NSnFH=x3S1>fRGBL6;HdHV&Ffvsj5-`93qo*%Fko_KrE9N{-PDtQLNJ&Uw zz9hpVAjJ}~u*OdzjWNlMEv;?I5*34Z#uass4^Iy^-y2vkW1{+%ng>^w|GjMXQDj}^ z+R_6~B})%(;}zm--4=6QJb!}4hg}t`U%bD3if_3S-@1sRzV8QihCW~4c2vUB;VA!; z<}KQ