-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlocal-search.xml
More file actions
174 lines (83 loc) · 52 KB
/
Copy pathlocal-search.xml
File metadata and controls
174 lines (83 loc) · 52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title></title>
<link href="/2023/Solidworks/"/>
<url>/2023/Solidworks/</url>
<content type="html"><![CDATA[<h1 id="百度网盘"><a href="#百度网盘" class="headerlink" title="百度网盘"></a>百度网盘</h1><h1 id="阿奇-—-SOLIDWORKS-2021-教学-精品教程-B站点赞NO-1"><a href="#阿奇-—-SOLIDWORKS-2021-教学-精品教程-B站点赞NO-1" class="headerlink" title="阿奇 — SOLIDWORKS 2021 教学 精品教程 | B站点赞NO.1"></a>阿奇 — SOLIDWORKS 2021 教学 精品教程 | B站点赞NO.1</h1><ol><li><a href="https://www.bilibili.com/video/BV1iw411Z7HZ?p=16&vd_source=1037d6eb410973586c4d8b58e8322f7d">第九课 3D打印手机支架_哔哩哔哩_bilibili</a></li><li><a href="https://ifcski218x.feishu.cn/docx/ZITWdjgx8oMQUpxbmn9cIsDyn6d">SOLIDWORKS 40道练习题 草图零件装配体工程图 全涵盖 - 飞书云文档 (feishu.cn)</a><ol><li>草图<ol><li>课后题<ol><li>带座轴承<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000129.png" alt="image.png500"></li><li>GAME BOY<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000309.png" alt="image.png500"></li><li>带座轴承修改<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000350.png" alt="image.png500"></li><li>指尖陀螺<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000424.png" alt="image.png500"></li><li>脚轮<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000729.png" alt="image.png500"></li><li>手枪<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000806.png" alt="image.png500"></li><li>五点共圆问题<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000907.png" alt="image.png500"></li><li>某奢侈品包包纹理<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225000946.png" alt="image.png500"></li></ol></li></ol></li><li>零件<ol><li>课程笔记<ol><li>特征</li><li>第九课 - 3D 打印手机支架<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225002148.png" alt="image.png500"></li></ol></li><li>课后题<ol><li>导向轴支座<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225001129.png" alt="image.png500"></li><li>FC 游戏机<br> <img src="https://13ios-note-pic.oss-cn-beijing.aliyuncs.com/pic/20231225001528.png" alt="image.png500"></li><li>炮塔支架</li><li>导向轴支座修改</li></ol></li></ol></li></ol></li></ol>]]></content>
</entry>
<entry>
<title>Simple Gobang via Python(1)</title>
<link href="/2021/Simple-Gobang-via-Python-1/"/>
<url>/2021/Simple-Gobang-via-Python-1/</url>
<content type="html"><![CDATA[<h3 id="介绍"><a href="#介绍" class="headerlink" title="介绍"></a>介绍</h3><p>在Python的培训课中,自己写了一个简单的利用list实现的五子棋程序。<br>分为自动对战/双人对战两种,但是目前自动对战基于随机落子,尚不涉及策略。<br>这是实现五子棋对战的第一步,后面希望可以实现策略落子以及人机对战。<br>该项目已经上传github:<a href="https://github.com/BIOSmode/Gobang">Gobang</a> </p><h3 id="实现结果:"><a href="#实现结果:" class="headerlink" title="实现结果:"></a>实现结果:</h3><p>基本功能:<br><img src="Be.jpg" alt="mode"><br><img src="Re.jpg" alt="end"> </p><h3 id="代码"><a href="#代码" class="headerlink" title="代码"></a>代码</h3><p>代码如下:<br><pre><code class="hljs python"><span class="hljs-comment"># 初始化棋盘</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">InitialChckerBoard</span>(<span class="hljs-params">row, col</span>):</span> Cboard = [[<span class="hljs-string">'[ ]'</span> <span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> range(col)] <span class="hljs-keyword">for</span> j <span class="hljs-keyword">in</span> range(row)] <span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> range(row): Cboard[<span class="hljs-number">0</span>][i] = str(i).center(<span class="hljs-number">3</span>) <span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> range(col): Cboard[i][<span class="hljs-number">0</span>] = str(i).rjust(<span class="hljs-number">3</span>) <span class="hljs-keyword">return</span> Cboard<span class="hljs-comment"># 显示棋盘</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">DisplayCheckerBoard</span>(<span class="hljs-params">Cboard</span>):</span> <span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> range(n): <span class="hljs-keyword">for</span> j <span class="hljs-keyword">in</span> range(m): print(Cboard[i][j], end=<span class="hljs-string">' '</span>) print() print()<span class="hljs-comment"># 判断此处是否有子</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">CheckPiece</span>(<span class="hljs-params">x, y</span>):</span> <span class="hljs-keyword">if</span> Cboard[x][y] == <span class="hljs-string">' * '</span> <span class="hljs-keyword">or</span> Cboard[x][y] == <span class="hljs-string">' o '</span>: <span class="hljs-keyword">return</span> <span class="hljs-literal">True</span> <span class="hljs-keyword">return</span> <span class="hljs-literal">False</span><span class="hljs-comment"># 下棋</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">MakeMove</span>(<span class="hljs-params">Cboard</span>):</span> <span class="hljs-keyword">global</span> Move, m1, m2 <span class="hljs-keyword">if</span> CheckPiece(Move[<span class="hljs-number">1</span>], Move[<span class="hljs-number">2</span>]) == <span class="hljs-literal">False</span>: <span class="hljs-keyword">if</span> Move[<span class="hljs-number">0</span>] == <span class="hljs-number">1</span>: mark = <span class="hljs-string">' * '</span> m1 += <span class="hljs-number">1</span> Move[<span class="hljs-number">0</span>] = <span class="hljs-number">2</span> print(<span class="hljs-string">'Player1 put the '</span>, m1, <span class="hljs-string">' piece at ('</span>, Move[<span class="hljs-number">1</span>], <span class="hljs-string">', '</span>, Move[<span class="hljs-number">2</span>], <span class="hljs-string">').'</span>) <span class="hljs-keyword">else</span>: mark = <span class="hljs-string">' o '</span> m2 += <span class="hljs-number">1</span> Move[<span class="hljs-number">0</span>] = <span class="hljs-number">1</span> print(<span class="hljs-string">'Player2 put the '</span>, m2, <span class="hljs-string">' piece at ('</span>, Move[<span class="hljs-number">1</span>], <span class="hljs-string">', '</span>, Move[<span class="hljs-number">2</span>], <span class="hljs-string">').'</span>) Cboard[Move[<span class="hljs-number">1</span>]][Move[<span class="hljs-number">2</span>]] = mark <span class="hljs-keyword">return</span> Cboard <span class="hljs-keyword">else</span>: print(<span class="hljs-string">'To player'</span>, Move[<span class="hljs-number">0</span>], <span class="hljs-string">': please re-select location!'</span>) <span class="hljs-keyword">return</span> Cboard<span class="hljs-comment"># 自动选择下棋位置</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">SelectPointA</span>(<span class="hljs-params">row,col</span>):</span> Move[<span class="hljs-number">1</span>] = random.randint(<span class="hljs-number">1</span>, row<span class="hljs-number">-1</span>) Move[<span class="hljs-number">2</span>] = random.randint(<span class="hljs-number">1</span>, col<span class="hljs-number">-1</span>)<span class="hljs-comment"># 人工选择下棋位置</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">SelectPointP</span>(<span class="hljs-params">row, col</span>):</span> Move[<span class="hljs-number">1</span>] = row Move[<span class="hljs-number">2</span>] = col<span class="hljs-comment"># 判断输赢</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">CheckResult</span>(<span class="hljs-params">Cboard</span>):</span> <span class="hljs-keyword">global</span> winner <span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, n - <span class="hljs-number">4</span>): <span class="hljs-keyword">for</span> j <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, m - <span class="hljs-number">4</span>): <span class="hljs-keyword">if</span> Cboard[i][j] == <span class="hljs-string">' * '</span> <span class="hljs-keyword">or</span> Cboard[i][j] == <span class="hljs-string">' o '</span>: <span class="hljs-keyword">if</span> Cboard[i][j] == <span class="hljs-string">' * '</span>: winner = <span class="hljs-number">1</span> <span class="hljs-keyword">else</span>: winner = <span class="hljs-number">2</span> <span class="hljs-keyword">if</span> Cboard[i + <span class="hljs-number">1</span>][j] == Cboard[i][j]: <span class="hljs-comment"># 判断同一行是否连成5个</span> <span class="hljs-keyword">for</span> k <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, <span class="hljs-number">4</span>): <span class="hljs-keyword">if</span> Cboard[i + <span class="hljs-number">1</span> + k][j] != Cboard[i][j]: <span class="hljs-keyword">break</span> <span class="hljs-keyword">else</span>: <span class="hljs-keyword">if</span> k == <span class="hljs-number">3</span>: <span class="hljs-keyword">return</span> <span class="hljs-literal">True</span> <span class="hljs-keyword">if</span> Cboard[i][j + <span class="hljs-number">1</span>] == Cboard[i][j]: <span class="hljs-comment"># 判断同一行是否连成5个</span> <span class="hljs-keyword">for</span> k <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, <span class="hljs-number">4</span>): <span class="hljs-keyword">if</span> Cboard[i][j + <span class="hljs-number">1</span> + k] != Cboard[i][j]: <span class="hljs-keyword">break</span> <span class="hljs-keyword">else</span>: <span class="hljs-keyword">if</span> k == <span class="hljs-number">3</span>: <span class="hljs-keyword">return</span> <span class="hljs-literal">True</span> <span class="hljs-keyword">if</span> Cboard[i + <span class="hljs-number">1</span>][j + <span class="hljs-number">1</span>] == Cboard[i][j]: <span class="hljs-comment"># 判断左上-右下对角是否连成5个</span> <span class="hljs-keyword">for</span> k <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, <span class="hljs-number">4</span>): <span class="hljs-keyword">if</span> Cboard[i + <span class="hljs-number">1</span> + k][j + <span class="hljs-number">1</span> + k] != Cboard[i][j]: <span class="hljs-keyword">break</span> <span class="hljs-keyword">else</span>: <span class="hljs-keyword">if</span> k == <span class="hljs-number">3</span>: <span class="hljs-keyword">return</span> <span class="hljs-literal">True</span> <span class="hljs-keyword">if</span> j > <span class="hljs-number">4</span>: <span class="hljs-keyword">if</span> Cboard[i + <span class="hljs-number">1</span>][j - <span class="hljs-number">1</span>] == Cboard[i][j]: <span class="hljs-comment"># 判断右上-左下对角是否连成5个</span> <span class="hljs-keyword">for</span> k <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, <span class="hljs-number">4</span>): <span class="hljs-keyword">if</span> Cboard[i + <span class="hljs-number">1</span> + k][j - <span class="hljs-number">1</span> - k] != Cboard[i][j]: <span class="hljs-keyword">break</span> <span class="hljs-keyword">else</span>: <span class="hljs-keyword">if</span> k == <span class="hljs-number">3</span>: <span class="hljs-keyword">return</span> <span class="hljs-literal">True</span> <span class="hljs-keyword">return</span> <span class="hljs-literal">False</span><span class="hljs-comment"># 判断棋盘是否下满</span><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">CheckFull</span>(<span class="hljs-params">Cboard</span>):</span> <span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, n): <span class="hljs-keyword">for</span> j <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, m): <span class="hljs-keyword">if</span> Cboard[i][j] != <span class="hljs-string">' * '</span> <span class="hljs-keyword">and</span> Cboard[i][j] != <span class="hljs-string">' o '</span>: <span class="hljs-keyword">return</span> <span class="hljs-literal">False</span> <span class="hljs-keyword">return</span> <span class="hljs-literal">True</span><span class="hljs-keyword">if</span> __name__ == <span class="hljs-string">'__main__'</span>: <span class="hljs-comment"># 主进程</span> <span class="hljs-keyword">import</span> random m = <span class="hljs-number">21</span> n = <span class="hljs-number">21</span> <span class="hljs-comment"># 创建(m-1)*(n-1)的棋盘</span> Cboard = InitialChckerBoard(m, n) DisplayCheckerBoard(Cboard) <span class="hljs-comment">#声明下棋落点的全局变量</span> <span class="hljs-keyword">global</span> Move, m1, m2, winner Move = [<span class="hljs-number">1</span>, <span class="hljs-number">3</span>, <span class="hljs-number">3</span>] m1 = <span class="hljs-number">0</span> m2 = <span class="hljs-number">0</span> mode = input(<span class="hljs-string">"Please choose the game mode(a:auto,p:people):a/p:"</span>) <span class="hljs-keyword">if</span> mode == <span class="hljs-string">'a'</span>: <span class="hljs-keyword">while</span> (CheckResult(Cboard) == <span class="hljs-literal">False</span>) <span class="hljs-keyword">and</span> (CheckFull(Cboard) == <span class="hljs-literal">False</span>): SelectPointA(m,n) Cboard = MakeMove(Cboard) DisplayCheckerBoard(Cboard) <span class="hljs-keyword">elif</span> mode == <span class="hljs-string">'p'</span>: <span class="hljs-keyword">while</span> (CheckResult(Cboard) == <span class="hljs-literal">False</span>) <span class="hljs-keyword">and</span> (CheckFull(Cboard) == <span class="hljs-literal">False</span>): print(<span class="hljs-string">'Player'</span>, Move[<span class="hljs-number">0</span>], <span class="hljs-string">': row <= '</span>, m - <span class="hljs-number">1</span>, <span class="hljs-string">' column <= '</span>, n - <span class="hljs-number">1</span>) inrow = int(input(<span class="hljs-string">'Enter the row:'</span>)) incol = int(input(<span class="hljs-string">'Enter the column:'</span>)) SelectPointP(inrow, incol) Cboard = MakeMove(Cboard) DisplayCheckerBoard(Cboard) <span class="hljs-comment"># 判断棋局结果</span> <span class="hljs-keyword">if</span> CheckResult(Cboard) == <span class="hljs-literal">True</span>: print(<span class="hljs-string">'Player'</span>, winner, <span class="hljs-string">'won the game!'</span>) <span class="hljs-keyword">if</span> CheckFull(Cboard) == <span class="hljs-literal">True</span>: print(<span class="hljs-string">'Draw'</span>)</code></pre></p>]]></content>
<categories>
<category>Algorithm</category>
</categories>
<tags>
<tag>Python</tag>
</tags>
</entry>
<entry>
<title>Markdown公式语法</title>
<link href="/2020/markdown/"/>
<url>/2020/markdown/</url>
<content type="html"><![CDATA[<p>在写统计的那篇博客时,用到了大量的数学公式,在网上查了Markdown的公式语法是如何使用的,把日常经常使用的公式写法整理到此,并附上了示例。<br><a id="more"></a></p><p>原贴作者:DanielGavin<br>链接:<a href="https://www.jianshu.com/p/e74eb43960a1">https://www.jianshu.com/p/e74eb43960a1</a></p><h2 id="行内与独行"><a href="#行内与独行" class="headerlink" title="行内与独行"></a>行内与独行</h2><p>行内公式:将公式插入到本行内,符号:<code>$$公式内容$$</code>,如:<code>$$xyz$$</code>:$xyz$<br>独行公式:将公式插入到新的一行内,并且居中,符号:<code>$$$公式内容$$$</code>如:<code>$$$xyz$$$</code>:</p><script type="math/tex; mode=display">xyz</script><h2 id="上标、下标与组合"><a href="#上标、下标与组合" class="headerlink" title="上标、下标与组合"></a>上标、下标与组合</h2><p>上标符号,符号:<code>^</code>,如:<code>$$x^4$$</code>:$x^4$<br>下标符号,符号:<code>_</code>,如:<code>$$x_1$$</code>:$x<em>1$<br>组合符号,符号:{},如:``$${16}</em>{8}O{2+}<em>{2}$$``:${16}</em>{8}O{2+}_{2}$ </p><h2 id="字体与格式"><a href="#字体与格式" class="headerlink" title="字体与格式"></a>字体与格式</h2><p>字体控制,符号:\displaystyle,如:<code>$$\displaystyle \frac{x+y}{y+z}$$</code>:$\displaystyle \frac{x+y}{y+z}$<br>下划线符号,符号:\underline,如:<code>$$\underline{x+y}$$</code>:$\underline{x+y}$<br>上大括号,符号:\overbrace{算式},如:<code>$$\overbrace{a+b+c+d}^{2.0}$$</code>:$\overbrace{a+b+c+d}^{2.0}$<br>下大括号,符号:\underbrace{算式},如:<code>$$a+\underbrace{b+c}_{1.0}+d$$</code>:$a+\underbrace{b+c}_{1.0}+d$<br>上位符号,符号:\stacrel{上位符号}{基位符号},如:<code>$\vec{x}\stackrel{\mathrm{def}}{=}{x_1,\dots,x_n}$</code>:$\vec{x}\stackrel{\mathrm{def}}{=}{x_1,\dots,x_n}$<br>占位符,两个quad空格,符号:\qquad,如:<code>$$x \qquad y$$</code>:$x \qquad y$<br>quad空格,符号:\quad,如:<code>$$x \quad y$$</code>:$x \quad y$<br>大空格,符号\,如:<code>$$x \ y$$</code>:$x \ y$<br>中空格,符号\:,如:<code>$x \: y$</code>:$x \: y$<br>小空格,符号\,,如:<code>$$x \, y$$</code>:$x \, y$<br>紧贴,符号!,如:<code>$$x \! y$$</code>:$x ! y$ </p><h2 id="定界符与组合"><a href="#定界符与组合" class="headerlink" title="定界符与组合"></a>定界符与组合</h2><p>括号,符号:()\big(\big) \Big(\Big) \bigg(\bigg) \Bigg(\Bigg),如:$()\big(\big) \Big(\Big) \bigg(\bigg) \Bigg(\Bigg)$<br>中括号,符号:<code>[]</code>,如:$[x+y]$<br>大括号,符号:{ },如:${x+y}$<br>自适应括号,符号:\left \right,如:$\left(x\right)$,$\left(x{yz}\right)$<br>组合公式,符号:{上位公式 \choose 下位公式},如:${n+1 \choose k}={n \choose k}+{n \choose k-1}$<br>组合公式,符号:{上位公式 \atop 下位公式},如:$\sum<em>{k_0,k_1,\ldots>0 \atop k_0+k_1+\cdots=n}A</em>{k<em>0}A</em>{k_1}\cdots$ </p><h2 id="四则运算"><a href="#四则运算" class="headerlink" title="四则运算"></a>四则运算</h2><p>加法运算,符号:+,如:$x+y=z$<br>减法运算,符号:-,如:$x-y=z$<br>加减运算,符号:\pm,如:$x \pm y=z$<br>减甲运算,符号:\mp,如:$x \mp y=z$<br>乘法运算,符号:\times,如:$x \times y=z$<br>点乘运算,符号:\cdot,如:$x \cdot y=z$<br>星乘运算,符号:\ast,如:$x \ast y=z$<br>除法运算,符号:\div,如:$x \div y=z$<br>斜法运算,符号:/,如:$x/y=z$<br>分式表示,符号:\frac{分子}{分母},如:$\frac{x+y}{y+z}$<br>分式表示,符号:{分子} \voer {分母},如:${x+y} \over {y+z}$<br>绝对值表示,符号:||,如:$|x+y|$ </p><h2 id="高级运算"><a href="#高级运算" class="headerlink" title="高级运算"></a>高级运算</h2><p>平均数运算,符号:\overline{算式},如:<code>$$\overline{xyz}$$</code>:$\overline{xyz}$<br>开二次方运算,符号:\sqrt,如:<code>$$\sqrt x$$</code>:$\sqrt x$<br>开方运算,符号:\sqrt[开方数]{被开方数},如:<code>$$\sqrt[3]{x+y}$$</code>:$\sqrt[3]{x+y}$<br>对数运算,符号:\log,如:<code>$$\log(x)$$</code>:$\log(x)$<br>极限运算,符号:\lim,如:<code>$$\lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$$</code>:$\lim^{x \to \infty}<em>{y \to 0}{\frac{x}{y}}$<br>极限运算,符号:\displaystyle \lim,如:``$$\displaystyle \lim^{x \to \infty}</em>{y \to 0}{\frac{x}{y}}<script type="math/tex">``:$\displaystyle \lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$ 求和运算,符号:\sum,如:``</script>\sum^{x \to \infty}<em>{y \to 0}{\frac{x}{y}}$$``:$\sum^{x \to \infty}</em>{y \to 0}{\frac{x}{y}}$<br>求和运算,符号:\displaystyle \sum,如:<code>$$\displaystyle \sum^{x \to \infty}_{y \to 0}{\frac{x}{y}}$$</code>:$\displaystyle \sum^{x \to \infty}<em>{y \to 0}{\frac{x}{y}}$<br>积分运算,符号:\int,如:``$$\int^{\infty}</em>{0}{xdx}<script type="math/tex">``:$\int^{\infty}_{0}{xdx}$ 积分运算,符号:\displaystyle \int,如:``</script>\displaystyle \int^{\infty}<em>{0}{xdx}$$``:$\displaystyle \int^{\infty}</em>{0}{xdx}$<br>微分运算,符号:\partial,如:<code>$$\frac{\partial x}{\partial y}$$</code>:$$\frac{\partial x}{\partial y}$<br>矩阵表示,符号:\begin{matrix} \end{matrix},如:<code>$\left[ \begin{matrix} 1 &2 &\cdots &4 \\ 5 &6 &\cdots &8 \\ \vdots &\vdots &\ddots &\vdots \\13 &14 &\cdots &16\end{matrix} \right]$</code>:</p><script type="math/tex; mode=display">\left[ \begin{matrix} 1 &2 &\cdots &4 \\ 5 &6 &\cdots &8 \\ \vdots &\vdots &\ddots &\vdots \\13 &14 &\cdots &16\end{matrix} \right]</script><h2 id="逻辑运算"><a href="#逻辑运算" class="headerlink" title="逻辑运算"></a>逻辑运算</h2><p>等于运算,符号:=,如:$x+y=z$<br>大于运算,符号:>,如:$x+y>z$<br>小于运算,符号:<,如:$x+y<z$<br>大于等于运算,符号:\geq,如:$x+y \geq z$<br>小于等于运算,符号:\leq,如:$x+y \leq z$<br>不等于运算,符号:\neq,如:$x+y \neq z$<br>不大于等于运算,符号:\ngeq,如:$x+y \ngeq z$<br>不大于等于运算,符号:\not\geq,如:$x+y \not\geq z$<br>不小于等于运算,符号:\nleq,如:$x+y \nleq z$<br>不小于等于运算,符号:\not\leq,如:$x+y \not\leq z$<br>约等于运算,符号:\approx,如:$x+y \approx z$<br>恒定等于运算,符号:\equiv,如:$x+y \equiv z$ </p><h2 id="集合运算"><a href="#集合运算" class="headerlink" title="集合运算"></a>集合运算</h2><p>属于运算,符号:\in,如:$x \in y$<br>不属于运算,符号:\notin,如:$x \notin y$<br>不属于运算,符号:\not\in,如:$x \not\in y$<br>子集运算,符号:\subset,如:$x \subset y$<br>子集运算,符号:\supset,如:$x \supset y$<br>真子集运算,符号:\subseteq,如:$x \subseteq y$<br>非真子集运算,符号:\subsetneq,如:$x \subsetneq y$<br>真子集运算,符号:\supseteq,如:$x \supseteq y$<br>非真子集运算,符号:\supsetneq,如:$x \supsetneq y$<br>非子集运算,符号:\not\subset,如:$x \not\subset y$<br>非子集运算,符号:\not\supset,如:$x \not\supset y$<br>并集运算,符号:\cup,如:$x \cup y$<br>交集运算,符号:\cap,如:$x \cap y$<br>差集运算,符号:\setminus,如:$x \setminus y$<br>同或运算,符号:\bigodot,如:$x \bigodot y$<br>同与运算,符号:\bigotimes,如:$x \bigotimes y$<br>实数集合,符号:\mathbb{R},如:\mathbb{R}<br>自然数集合,符号:\mathbb{Z},如:\mathbb{Z}<br>空集,符号:\emptyset,如:$\emptyset$ </p><h2 id="数学符号"><a href="#数学符号" class="headerlink" title="数学符号"></a>数学符号</h2><p>无穷,符号:\infty,如:$\infty$<br>虚数,符号:\imath,如:$\imath$<br>虚数,符号:\jmath,如:$\jmath$<br>数学符号,符号\hat{a},如:$\hat{a}$<br>数学符号,符号\check{a},如:$\check{a}$<br>数学符号,符号\breve{a},如:$\breve{a}$<br>数学符号,符号\tilde{a},如:$\tilde{a}$<br>数学符号,符号\bar{a},如:$\bar{a}$<br>矢量符号,符号\vec{a},如:$\vec{a}$<br>数学符号,符号\acute{a},如:$\acute{a}$<br>数学符号,符号\grave{a},如:$\grave{a}$<br>数学符号,符号\mathring{a},如:$\mathring{a}$<br>一阶导数符号,符号\dot{a},如:$\dot{a}$<br>二阶导数符号,符号\ddot{a},如:$\ddot{a}$<br>上箭头,符号:\uparrow,如:$\uparrow$<br>上箭头,符号:\Uparrow,如:$\Uparrow$<br>下箭头,符号:\downarrow,如:$\downarrow$<br>下箭头,符号:\Downarrow,如:$\Downarrow$<br>左箭头,符号:\leftarrow,如:$\leftarrow$<br>左箭头,符号:\Leftarrow,如:$\Leftarrow$<br>右箭头,符号:\rightarrow,如:$\rightarrow$<br>右箭头,符号:\Rightarrow,如:$\Rightarrow$<br>底端对齐的省略号,符号:\ldots,如:$1,2, \ldots,n$<br>中线对齐的省略号,符号:\cdots,如:$x_1^2 + x_2^2 + \cdots + x_n^2$<br>竖直对齐的省略号,符号:\vdots,如:$\vdots$<br>斜对齐的省略号,符号:\ddots,如:$\ddots$ </p><h3 id="希腊字母"><a href="#希腊字母" class="headerlink" title="希腊字母"></a>希腊字母</h3><div class="table-container"><table><thead><tr><th>字母</th><th>实现</th><th>字母</th><th>实现</th></tr></thead><tbody><tr><td>A</td><td>A</td><td>α</td><td>\alhpa</td></tr><tr><td>B</td><td>B</td><td>β</td><td>\beta</td></tr><tr><td>Γ</td><td>\Gamma</td><td>γ</td><td>\gamma</td></tr><tr><td>Δ</td><td>\Delta</td><td>δ</td><td>\delta</td></tr><tr><td>E</td><td>E</td><td>ϵ</td><td>\epsilon</td></tr><tr><td>Z</td><td>Z</td><td>ζ</td><td>\zeta</td></tr><tr><td>H</td><td>H</td><td>η</td><td>\eta</td></tr><tr><td>Θ</td><td>\Theta</td><td>θ</td><td>\theta</td></tr><tr><td>I</td><td>I</td><td>ι</td><td>\iota</td></tr><tr><td>K</td><td>K</td><td>κ</td><td>\kappa</td></tr><tr><td>Λ</td><td>\Lambda</td><td>λ</td><td>\lambda</td></tr><tr><td>M</td><td>M</td><td>μ</td><td>\mu</td></tr><tr><td>N</td><td>N</td><td>ν</td><td>\nu</td></tr><tr><td>Ξ</td><td>\Xi</td><td>ξ</td><td>\xi</td></tr><tr><td>O</td><td>O</td><td>ο</td><td>\omicron</td></tr><tr><td>Π</td><td>\Pi</td><td>π</td><td>\pi</td></tr><tr><td>P</td><td>P</td><td>ρ</td><td>\rho</td></tr><tr><td>Σ</td><td>\Sigma</td><td>σ</td><td>\sigma</td></tr><tr><td>T</td><td>T</td><td>τ</td><td>\tau</td></tr><tr><td>Υ</td><td>\Upsilon</td><td>υ</td><td>\upsilon</td></tr><tr><td>Φ</td><td>\Phi</td><td>ϕ</td><td>\phi</td></tr><tr><td>X</td><td>X</td><td>χ</td><td>\chi</td></tr><tr><td>Ψ</td><td>\Psi</td><td>ψ</td><td>\psi</td></tr><tr><td>Ω</td><td>\v</td><td>ω</td><td>\omega</td></tr></tbody></table></div>]]></content>
<categories>
<category>Knowledge</category>
</categories>
<tags>
<tag>Website</tag>
</tags>
</entry>
<entry>
<title>方差、协方差、标准差、均方差、均方根误差以及均方根值对比</title>
<link href="/2020/statistic-value/"/>
<url>/2020/statistic-value/</url>
<content type="html"><![CDATA[<p>由于研究中涉及到了对实验结果的处理和统计,发现自己对于均方差和均方根值的概念记忆非常模糊,故搜集了描述统计量的偏差的几个关键值的资料,并加入个人的理解记录在此。<br><a id="more"></a></p><h2 id="方差(Variance)"><a href="#方差(Variance)" class="headerlink" title="方差(Variance)"></a>方差(Variance)</h2><p>方差通常用来用于衡量一组随机变量或统计变量的离散程度。 </p><h3 id="概率论中方差计算方法"><a href="#概率论中方差计算方法" class="headerlink" title="概率论中方差计算方法"></a>概率论中方差计算方法</h3><p>在随机变量中,方差用于度量随机变量和其数学期望之间的偏离程度。 </p><ol><li>对于连续型随机变量,其数学期望: <script type="math/tex; mode=display">E(x)=\displaystyle \sum^{n}_{i=1}{x_iy_i}</script></li><li>对于离散型随机变量,其数学期望: <script type="math/tex; mode=display">E(x)=\displaystyle \int^{+\infty}_{-\infty}{xf(x)dx}</script>其中,$x_i$是变量,$p_i$是$x_i$发生的概率,$f(x)$是$x$的概率密度函数。<br>方差的求法如下:<script type="math/tex; mode=display">D(X)=Var(X)=E[X-E(X)]^2=E(X^2)-E(X)^2</script><h3 id="统计学中方差计算方法"><a href="#统计学中方差计算方法" class="headerlink" title="统计学中方差计算方法"></a>统计学中方差计算方法</h3><strong>总体方差</strong>,也称有偏估计,即度量统计中每一个量的离散程度。<br>计算方法,先求所有量的均值:<script type="math/tex; mode=display">\bar{X}= \frac{x_1+x_2+\ldots+x_n}{n}</script>其中,$x_1+x_2+\ldots+x_n$表示每一个的值,方差公式为:<script type="math/tex; mode=display">σ^2=\frac{(x_1-\bar{X})^2+(x_2-\bar{X})^2+\ldots+(x_n-\bar{X})^2}{n}</script><strong>样本方差</strong>,也称无偏估计,即通过度量样本的离散程度来估计总体的离散程度,方差计算方法如下:<script type="math/tex; mode=display">s^2=\frac{(x_1-\bar{X})^2+(x_2-\bar{X})^2+\ldots+(x_n-\bar{X})^2}{n-1}</script>为什么将分母由$n$变为$n-1$即令其为无偏估计误差,参考文章<a href="https://www.matongxue.com/madocs/607">《为什么样本方差(sample variance)的分母是 n-1?》</a></li></ol><h2 id="协方差(Covariance)"><a href="#协方差(Covariance)" class="headerlink" title="协方差(Covariance)"></a>协方差(Covariance)</h2><p>协方差在概率论和统计学中用于衡量两个变量的总体误差。而方差是协方差的一种特殊情况,即当两个变量是同一变量的情况。<br>协方差表示的是两个变量的总体的误差,这与只表示一个变量误差的方差不同。 如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值,另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值。 如果两个变量的变化趋势相反,即其中一个大于自身的期望值,另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值。<br>概率论中:</p><script type="math/tex; mode=display">Cov(X,Y)=E[(X-E(X))(Y-E(Y))]=E[XY]-E[X]E[Y]</script><p>其中$E[X]$和$E[Y]$分别是X和Y的数学期望; </p><p>统计学中:</p><script type="math/tex; mode=display">cov(X,Y)= \frac{\sum^{n}_{i = 1}{(x_i-\bar{X})(y_i-\bar{Y})}}{n-1}</script><h2 id="标准差(Standard-Deviation"><a href="#标准差(Standard-Deviation" class="headerlink" title="标准差(Standard Deviation)"></a>标准差(Standard Deviation)</h2><p>标准差也被称为标准偏差,在中文环境中又常称均方差,是数据偏离均值的平方和平均后的方根,用σ表示。标准差是方差的算术平方根。标准差能反映一个数据集的离散程度,只是由于方差出现了平方项造成量纲的倍数变化,无法直观反映出偏离程度,于是出现了标准差,标准偏差越小,这些值偏离平均值就越少,反之亦然。<br><strong>总体标准差</strong>:</p><script type="math/tex; mode=display">σ=\sqrt{\frac{1}{N-1}\displaystyle \sum^{N}_{i=1}{(x_i-\mu)^2}}</script><p>其中$\mu$代表总体X的数学期望。<br><strong>样本标准差</strong>:</p><script type="math/tex; mode=display">s=\sqrt{\frac{1}{N}\displaystyle \sum^{N}_{i=1}{(x_i-\bar X)^2}}</script><p>其中$\bar X$代表样本$X_1,X_2,\ldots,X_n$的均值。</p><h2 id="均方误差(Mean-Square-Error-MSE)"><a href="#均方误差(Mean-Square-Error-MSE)" class="headerlink" title="均方误差(Mean-Square Error, MSE)"></a>均方误差(Mean-Square Error, MSE)</h2><p>均方误差是反映估计量与被估计量之间差异程度的一种度量,换句话说,参数估计值与参数真值之差的平方的期望值。MSE可以评价数据的变化程度,MSE的值越小,说明预测模型描述实验数据具有更好的精确度。</p><script type="math/tex; mode=display">MSE=\frac{1}{N}\displaystyle \sum^{n}_{t=1}{(observed_t-predicted_t)^2}</script><h2 id="均方根误差(Root-Mean-Squared-Error,RMSE)"><a href="#均方根误差(Root-Mean-Squared-Error,RMSE)" class="headerlink" title="均方根误差(Root Mean Squared Error,RMSE)"></a>均方根误差(Root Mean Squared Error,RMSE)</h2><p>均方根误差亦称标准误差,是均方误差的算术平方根。换句话说,是观测值与真值(或模拟值)偏差(而不是观测值与其平均值之间的偏差)的平方与观测次数n比值的平方根,在实际测量中,观测次数n总是有限的,真值只能用最可信赖(最佳)值来代替。标准误差对一组测量中的特大或特小误差反映非常敏感,所以,标准误差能够很好地反映出测量的精密度。这正是标准误差在工程测量中广泛被采用的原因。<strong>因此,标准差是用来衡量一组数自身的离散程度,而均方根误差是用来衡量观测值同真值之间的偏差。</strong></p><script type="math/tex; mode=display">RMSE=\sqrt{\frac{1}{N}\displaystyle \sum^{n}_{t=1}{(observed_t-predicted_t)^2}}</script><h2 id="均方根值(Root-Mean-Square,RMS)"><a href="#均方根值(Root-Mean-Square,RMS)" class="headerlink" title="均方根值(Root-Mean-Square,RMS)"></a>均方根值(Root-Mean-Square,RMS)</h2><p>均方根值也称作为方均根值或有效值,在数据统计分析中,将所有值平方求和,求其均值,再开平方,就得到均方根值。在物理学中,我们常用均方根值来分析噪声。</p><script type="math/tex; mode=display">X_{RMS}=\sqrt{\frac{\sum^{N}_{i=1}{X_i^2}}{N}}=\sqrt{\frac{X_1^2+X_2^2+\ldots+X_N^2}{N}}</script><p>举个例子:比如幅度为100V而占空比为0.5的方波信号,如果按平均值计算,它的电压只有50V,而按均方根值计算则有70.71V。这是为什么呢?举一个例子,有一组100伏的电池组,每次供电10分钟之后停10分钟,也就是说占空比为一半。如果这组电池带动的是10Ω电阻,供电的10分钟产生10A 的电流和1000W的功率,停电时电流和功率为零。</p>]]></content>
<categories>
<category>Knowledge</category>
</categories>
<tags>
<tag>statistic</tag>
<tag>Research</tag>
</tags>
</entry>
<entry>
<title>给自己祈个福吧~</title>
<link href="/2020/preying/"/>
<url>/2020/preying/</url>
<content type="html"><![CDATA[<p>立这个贴主要是给自己祈个福,真的有点想有个学可以上呀!</p><a id="more"></a><h3 id="第四次的雅思之旅"><a href="#第四次的雅思之旅" class="headerlink" title="第四次的雅思之旅"></a>第四次的雅思之旅</h3><p>这第四次的雅思我信心满满的去了,信心满满的出来了。<br>成绩又回到了最初的起点。<br>目前四次,人家是听说读写样样精通,我是听说读写一样瘸一次腿,真是没毛病。</p><h3 id="实验室的问题"><a href="#实验室的问题" class="headerlink" title="实验室的问题"></a>实验室的问题</h3><p>实验室的问题是解决了,目前在论文上还有有一些思路的,但是最近实在是事情比较多,毕业论文、实习报告,自己应该还是要写三封信,都需要相当的时间,不知道这篇论文能不能投的出去。</p><h3 id="祈福祈福"><a href="#祈福祈福" class="headerlink" title="祈福祈福"></a>祈福祈福</h3><p>不多说了,先上个超越妹妹祈个锦鲤保佑吧。<br><img src="yangchaoyue.jpg" alt="YCY"><br>尽管自己主要是本科期间太过于荒废自我了,但是本咸鱼还是可以体验到那么一些科研的乐趣的,尽管今年环境如此复杂和恶劣,还是希望有个书读的。</p><h3 id="立冬到,吃饺子"><a href="#立冬到,吃饺子" class="headerlink" title="立冬到,吃饺子"></a>立冬到,吃饺子</h3><p>今天完完全全自己做了一顿饺子吃,行了,出门肯定饿不死了。<br><img src="20201107_135150.jpg" alt="jiaozi1"><br><img src="20201107_151910.jpg" alt="jiaozi2"><br><img src="20201107_153125.jpg" alt="jiaozi3"><br><img src="20201107_155016.jpg" alt="jiaozi4"> </p><h3 id="之后的打算。"><a href="#之后的打算。" class="headerlink" title="之后的打算。"></a>之后的打算。</h3><ol><li>先毕业吧,剩下的再说。</li><li>希望有个老师愿意要我,哈哈哈。</li></ol>]]></content>
<categories>
<category>Diary</category>
</categories>
<tags>
<tag>Diary</tag>
</tags>
</entry>
<entry>
<title>Transit Navigation Satellite System</title>
<link href="/2020/Transit/"/>
<url>/2020/Transit/</url>
<content type="html"><![CDATA[<p>最近在做对于多普勒定位的时间误差因素相关问题,阅读了最初的介绍子午仪的文献,原笔记记录在onenote上,整理之后分享出来~<br><a id="more"></a></p><h2 id="子午仪导航系统"><a href="#子午仪导航系统" class="headerlink" title="子午仪导航系统"></a>子午仪导航系统</h2><p>高度约为1075公里 , 每环绕地球一周需要107分钟。<br><strong>子午仪卫星定位的过程是:</strong> 接收每一颗卫星所发射的讯息,<strong>精确地</strong>算出它的作为时间函数的位置,将这些计算出来的卫星位置联合起来,测量它们到观测点的距离差(多普勒计数),并考虑船只的运动速度,就能准确地知道观测点的位置。</p><h3 id="1-误差来源"><a href="#1-误差来源" class="headerlink" title="1. 误差来源"></a>1. 误差来源</h3><p>用子午仪卫星定位时有二个主要的误差源。第一个误差源是系统的固有误差;第二个误差源则是在卫星通过期闻船只运动速度的测量误差引起的。对于静态定位,误差的主要来源基本都归属于固有误差。<br><strong>在一个固定点上观测定位结果的分放性可以测定系统的固有误差。</strong> 一个双频道子午仪卫星接收机的残留分散性的均方根值是32米。典型的双频道接收机的定位误差是27-37米(均方根值)。单频道卫星接收机,它不能测量和消除电离层折射所造成的误差,所以定位误差达80米至100米(均方根值)。</p><h4 id="第一个折射误差源是电离层。"><a href="#第一个折射误差源是电离层。" class="headerlink" title="第一个折射误差源是电离层。"></a>第一个折射误差源是电离层。</h4><p> 由于电离层折射可使单频道定位结果最大达200-500米,而对双频道则只有90米。使用只有400MHz一个频道。由于波长被拉长了,使得卫星好像是沿着具有更大曲率的路径通过卫星接收机的顶部似的。这种效应稍微减少了总的多普勒频移,使卫星定位的解偏离了卫星轨道。这也是多普勒曲线陡度较小的原因。由于卫星主要是沿着南北线运动的,所以最后的定位误差几乎全是经度方向上的误差。这个误差是电离层密度的函数,夜间误差非常小,白夫误差很大,最大值可达200米至500米,这是由于太阳黑子的活动和磁赤道的影响所致。在磁赤道上,电离层的密度最大。为了发射精密的时间讯息,在150M和400M讯号上增加了一个高频伪随机噪声(PRN)。这样,即使单频道卫星接收机也可以进行电离层折射校正(检测群延迟和相延迟之间的差值),而且,经过适当改装的卫星接收机还能够从其它的卫星中区分出所选定的卫星讯号,从而消除了卫星轨道交叉时所造成的干扰。</p><h4 id="第二个折射误差源是大气层。"><a href="#第二个折射误差源是大气层。" class="headerlink" title="第二个折射误差源是大气层。"></a>第二个折射误差源是大气层。</h4><p> 当讯号穿过地球大气层时,讯号传播速度被减缓了,大气层压缩了讯号波长。这种影响正比于发射频率,因而不能像电离层那样进行检测。解决方法:1. 模拟方法。测量温度,压力和湿度进行模拟,它是非常成熟和完善的。如果和第二种方法联系起来,这点就更为明显了。在第二种方法中,去掉那些靠近地平线的数据,因为这些数据中包含的大气层折射误差最大。当卫星的仰角超过5°至10°时,大气层折射误差比地平线上时的误差小许多倍。STK采用的Harris Priester 大气模型 ,考虑了大气周日密度变化和太阳紫外线辐射流量的影响。采用了 7~8 阶 Runge-Kutta-Fehlberg 方法积分求解卫星运动方程。 </p><div class="table-container"><table><thead><tr><th>误差源</th><th>误差值/m</th></tr></thead><tbody><tr><td>传播效应(电离层和大气层影响)没有进行校正</td><td>1-5</td></tr><tr><td>仪器和测量噪声(本机和卫星振荡器的相位抖动,接收机的吋钟误差)</td><td>3-6</td></tr><tr><td>用来计算卫星轨道的地球物理场模型不正确</td><td>10-20</td></tr><tr><td>接收机的高度不正确(通常只引起经度偏离)</td><td>10</td></tr><tr><td>不能模拟的极点运动和UTⅠUTC效应</td><td>0-10</td></tr><tr><td>对表面力(在外推期间作用在卫星上的曳力和輻射压力)的模拟不正确</td><td>10-25</td></tr><tr><td>星历舍入误差(在星磨舍入时的最后一位)</td><td>5</td></tr></tbody></table></div><h3 id="2-轨道误差"><a href="#2-轨道误差" class="headerlink" title="2. 轨道误差"></a>2. 轨道误差</h3><p>同卫星研制工作齐头并进的一项计划,皆在得到高精度的地球重力场模型。这项工作一直延续到现在还在做。为得到在轨道上运行的一颗卫星实际上的连续覆盖,在世界各地建立了由13个跟踪站组成的台站网。“子午仪”和其它适宜的卫星是用这个跟踪台站网来跟踪的,并把数据传送给应用物理实验室进行分析。计算分析包括处理跟踪数据和计算地球重力场模型(以一个由几百个球谐项级数组成的表达式),这是一项繁重的任务。但是这项计算任务还是有收获的,因为使轨道预报误差减小至小于10米。</p><h5 id="单点定位时,轨道的误差对定位的影响"><a href="#单点定位时,轨道的误差对定位的影响" class="headerlink" title="单点定位时,轨道的误差对定位的影响"></a>单点定位时,轨道的误差对定位的影响</h5><p>利用卫星运动方程式的数字积分法获得的。通常不能够精确地测出这些力,所以预测的轨道常常偏离实际的轨道。在单次卫星通过时,这个偏离值常常可以达到27米到37米。<br>如果可以不用预测轨道参数,而用实际跟踪的轨道参数,则将会获得更为精确的成果。美国国土保卫局(DMA)采用了这种技术,减少了诸如AN/PRR-14型大地接收机野外所记录的卫星多普勒数据。在野外用磁带记录下测量数据,送至计算中心进行处理。在计算中心根据实际跟踪到的轨道将多普勒数据和卫星位置的精密星历联合起来,这样,单次观测结果的分散性只有6.3米(均方根值)。当然,用这种方法对三维,卫星多次通过求解时,比用预溯轨道参数求解时收敛要快得多。然而DMA在一个时间很难计算一个以上的精密卫星星历,所以在野外不能立即得出测量成果,这就使这种方法的优点稍有逊色。<br>但是,即使如此,为了获得同样的精度,利用预测轨道参数的设备在测站上必须保持的时间是利用精密星历的设备的4倍到10倍。在利用25次精密星历以后,DMA获得了每个轴的重复性为15米的三维定位成果。</p><h3 id="3-定位原理"><a href="#3-定位原理" class="headerlink" title="3. 定位原理"></a>3. 定位原理</h3><p>卫星不断播发<strong>偶数分钟开始时刻的轨道参数</strong>。卫星以7.3公里/秒的速度绕地球运转,与地面用户接收设备存在相对运动。接收设备测量多普勒频移。累计一段时间间隔里的多普勒周期数,称为多普勒计数。据此算出用户与卫星(在相邻2分钟的偶数分钟开始时刻所处位置)间的斜距差,这是实测数据。同时,根据用户假设位置(以经度纬度表示)也算出到卫星的斜距差。两个斜距差间存在差值说明假设位置不准,多普勒测量的斜距变化和计算出的位置之间的差值称为残量,计算定位值的目的就是寻找接收机的位置使这些残量的平方和极小也就是说使计算出的值和测量值之间的差别最小。于是再算出修正量Δλ、Δφ。当Δλ、Δφ超过规定限差时,则在原假设经度纬度上加入修正量Δλ、Δφ作为新的假设位置。然后,再重复上述过程,直到算出的墹Δλ、Δφ都小于规定限差。此时,得出的位置就是利用“子午仪”导航卫星测定的用户位置。</p><h3 id="4-信号格式"><a href="#4-信号格式" class="headerlink" title="4. 信号格式"></a>4. 信号格式</h3><p>为了补偿电离层折射引起的多普勒计数差值,“子午仪”卫星使用两个频率。卫星以接近于150MHz和400MHz的频率发射相干载频。频率都是直接由振荡器增频而产生的,所以发射频率非常稳定。在卫星通过期间,频率变化不超过10<sup>-1</sup>。<br>卫星存储的全部数据对载频进行相位调制,每2分钟向地面发射一次导航信号,供用户使用。每批电文由字长39位的156个字加上19个附加位组成。每批电文共有6103个码位,每码位占用发送时间约20毫秒。每码位又由两个码元组成,分成正码元和负码元。 一个正码元后接一个负码元组成“1”码位,一个负码元后接正码元组成“0”码位。</p><h3 id="5-卫星电文"><a href="#5-卫星电文" class="headerlink" title="5. 卫星电文"></a>5. 卫星电文</h3><p>卫星电文每2分钟发送一批, 虽然含有156个字和一个19位的终止字,但供民用的只有25个字。它们所表示的都是轨道参数,其中8个字为变化参数,表示卫星轨道摄动变化量,每2分钟变换一次。其余17个字为固定参数(开普勒参数),在12小时内重复发送并保持不变。17个字中有11个字用来确定轨道的平均椭圆,其余并不直接用于定位计算。它们变化很慢,用以预报几个月内卫星通过的时间(准确度达到几分钟以内)。其主要缺点为不能连续定位。</p><h3 id="6-多普勒测量"><a href="#6-多普勒测量" class="headerlink" title="6. 多普勒测量"></a>6. 多普勒测量</h3><p>根据所接收到的导航讯息,子午仪系统的用户可以知道作为时间函数的卫星位置。</p><h3 id="7-静止定位(差分)"><a href="#7-静止定位(差分)" class="headerlink" title="7. 静止定位(差分)"></a>7. 静止定位(差分)</h3><p>用卫星来测定一个固定点的方法有二种。第一种方法称为“单点法”。在这种方法中用一个卫星接收机来跟踪和记录每一颗通过给定点时,卫星所发出的讯号。将这些讯号送入计算机中,用程序将这些原始数据进行联合,以获得单一的最佳三维定位成果。每一个位置的大地基准由卫星系统本身给出。<br>如果有一个基准点离开测点几百公里,那么利用一种“变位”( Translocation)方法可以用更少的时间获得精度更高的定位成果。为了完成变位测量,需要二个或二个以上的卫星接收机,一个放在基准点上,另一个(或几个)放在待测点上。在待测点上和基准点上同时跟踪相同的卫星。由于计算机所解的是二个点之间的位置差,所以共同的误差源不起作用,从而提高了定位精度。</p><hr><h2 id="参考文献"><a href="#参考文献" class="headerlink" title="参考文献"></a>参考文献</h2><h2 id="1-桑玛斯·A·小斯丹塞尔-李振伍-子午仪卫星导航系统的现状-原理-性能和应用范围-J-海洋地质与第四纪地质-1979-2"><a href="#1-桑玛斯·A·小斯丹塞尔-李振伍-子午仪卫星导航系统的现状-原理-性能和应用范围-J-海洋地质与第四纪地质-1979-2" class="headerlink" title="1. 桑玛斯·A·小斯丹塞尔, 李振伍. 子午仪卫星导航系统的现状,原理,性能和应用范围[J]. 海洋地质与第四纪地质, 1979(2)."></a>1. <a href="https://www.sunguiyu.top/2020/Transit/Transit_Navigation_System.pdf">桑玛斯·A·小斯丹塞尔, 李振伍. 子午仪卫星导航系统的现状,原理,性能和应用范围[J]. 海洋地质与第四纪地质, 1979(2)</a>.</h2>]]></content>
<categories>
<category>Algorithm</category>
</categories>
<tags>
<tag>Research</tag>
<tag>Doppler</tag>
</tags>
</entry>
<entry>
<title>A New website and Blog for myself!</title>
<link href="/2020/NewWeb/"/>
<url>/2020/NewWeb/</url>
<content type="html"><![CDATA[<p>在申请Phd的过程中看到都需要个人网页来展示自己,所以萌生了创建一个个人网站和新博客的想法。<br><a id="more"></a></p><h3 id="Why-Hexo?"><a href="#Why-Hexo?" class="headerlink" title="Why Hexo?"></a>Why Hexo?</h3><p>在对比了一下之后,选择了hexo,以及fluid作为个人主页的主题;<br>选择了Academia作为个人学术主页的主题;<br>2020年10月14日-终于上线了还算令自己满意的两个网页作为全新的开始。<br>之后也会逐渐把之前的一些自己想要保存的内容迁移到这来。</p><h3 id="About-future"><a href="#About-future" class="headerlink" title="About future."></a>About future.</h3><blockquote><p>生活在互联网时代,当你决定将一切电子化,义无反顾地投入比特的世界时,最大的好处便是,这以后发生的每一起事件,都有着清楚的记录。 </p></blockquote><p>之后应该把这里作为生活的主站,写一些各种各样的自己的想法,计划或者记录一下自己学习的轨迹。</p>]]></content>
<categories>
<category>Diary</category>
</categories>
<tags>
<tag>Diary</tag>
</tags>
</entry>
</search>