-
Notifications
You must be signed in to change notification settings - Fork 0
/
search.xml
417 lines (200 loc) · 122 KB
/
search.xml
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
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title>《数据密集型系统应用设计》第三章读书笔记--事务处理与分析处理</title>
<link href="/2022/03/30/%E3%80%8A%E6%95%B0%E6%8D%AE%E5%AF%86%E9%9B%86%E5%9E%8B%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E8%AE%BE%E8%AE%A1%E3%80%8B%E7%AC%AC%E4%B8%89%E7%AB%A0%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0-%E4%BA%8B%E5%8A%A1%E5%A4%84%E7%90%86%E4%B8%8E%E5%88%86%E6%9E%90%E5%A4%84%E7%90%86/"/>
<url>/2022/03/30/%E3%80%8A%E6%95%B0%E6%8D%AE%E5%AF%86%E9%9B%86%E5%9E%8B%E7%B3%BB%E7%BB%9F%E5%BA%94%E7%94%A8%E8%AE%BE%E8%AE%A1%E3%80%8B%E7%AC%AC%E4%B8%89%E7%AB%A0%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0-%E4%BA%8B%E5%8A%A1%E5%A4%84%E7%90%86%E4%B8%8E%E5%88%86%E6%9E%90%E5%A4%84%E7%90%86/</url>
<content type="html"><![CDATA[<h1 id="事务处理与分析处理">事务处理与分析处理</h1><h1 id="事务处理与分析处理-1">事务处理与分析处理</h1><h2 id="oltp-vs-olap">OLTP vs OLAP</h2><p>动机:早期的数据库通常对应于商业交易领域,例如销售、订单、支付员工工资等。后来当数据库扩展到了不涉及金钱的领域,事务一词仍然存在,主要指 <strong><em>组成一个逻辑单元的一组读写操作</em></strong>。即使数据库被用于例如博客的评论、游戏中的动作、通讯录中的联系人等,其基本的访问模式仍然与处理业务交易类似。应用程序通常使用索引中的某些键查找 <strong>少量记录</strong>,因为这些应用程序是交互式的,所以访问模式被称为 <strong><em>在线事务处理</em></strong>(online transaction processing)。</p><p>不过随着商业进步,数据出现了一些不同访问模式,下面有几个是不同的.</p><blockquote><p>某在线游戏中指定游戏角色的等级是多少</p></blockquote><blockquote><p>购物网站中一个订单记录</p></blockquote><blockquote><p>博客里的某篇文章获得了多少点赞</p></blockquote><blockquote><p>一月份店铺的总收入是多少</p></blockquote><blockquote><p>在最近的促销期间,比平时多卖了多少香蕉</p></blockquote><blockquote><p>哪个品牌的婴儿食品最常与某品牌的尿布一起购买</p></blockquote><p>最后三项属于分析查询。通常,分析查询需要扫描大量记录,每个记录只读取少数几列,并计算汇总统计信息。</p><p>这些业务通常由业务分析师编写,以形成有助于公司管理层更好的决策。为了区分使用数据库与事务处理的模式,称之为 <strong>在线分析处理</strong>(online analytic processing)</p><p><em>注:OLAP 中 online 的含义尚不清楚。可能是指查询不仅仅针对预定义的报告,而且分析人员以交互方式使用OLAP系统进行探索性查询</em></p><p><strong>对比事务处理与事务分析系统的主要特性</strong></p><p><a href="https://www.notion.so/82904ef2b30d458abc9ce5c57b9a9ad4">对比事务处理与事务分析系统的主要特性</a></p><h2 id="数据仓库">数据仓库</h2><p>几乎所有的大型企业都有数据仓库,但是在小型企业中却几乎闻所未闻。大多数小公司只拥有少量的数据,完全可以在传统的SQL数据库中直接进行查询分析。</p><figure><img src="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-8.png" alt="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-8.png" /><figcaption aria-hidden="true">https://vonng.gitbooks.io/ddia-cn/content/img/fig3-8.png</figcaption></figure><p>事实证明,本章前半部分讨论的索引算法适合 OLTP ,但不擅长应对分析查询。在后面的部分,将重点介绍针对分析型而优化的储存引擎。</p><h3 id="oltp数据库和数据仓库之间的差异">OLTP数据库和数据仓库之间的差异</h3><p>为什么会出现这样的差异呢,不要忘记上面的表格~</p><p>数据仓库最常见的是关系型,因为SQL通常适合分析查询。有许多图形化数据分析工具,他们可以生成SQL查询、可视化结果并支持分析师探索数据。</p><p>一些数据库(例如Microsoft SQL Server和SAP HANA)在同一产品中支持事务处理和数据仓库。然而,它们越来越成为两个独立的存储和查询引擎,这些引擎恰好可以通过一个通用的SQL界面进行访问。(很成功的抽象)</p><ul><li>一些商业数据仓库:Teradata,Vertica,SAP HANA和ParAccel等</li><li>开源的基于Hadoop的SQL项目:Apache Hive,Spark SQL,Cloudera Impala,Facebook Presto,Apache Tajo和Apache Drill</li></ul><h2 id="星型与雪花型分析模式">星型与雪花型分析模式</h2><p>如第二章所述,根据不同的应用需求,事务处理领域广泛使用了多种不同数据模型。而另一方面,分析型业务的数据模型则要少得多。许多数据仓库都相当公式化的使用了<strong>星型模式</strong>,也称<strong>维度建模</strong>。</p><p>下图所示的模式可用于零售数据仓库。</p><figure><img src="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-9.png" alt="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-9.png" /><figcaption aria-hidden="true">https://vonng.gitbooks.io/ddia-cn/content/img/fig3-9.png</figcaption></figure><p>事实表中的列是属性,其它列可能会引用其他表的外键。由于事实表的每一行都代表一个事件,维度通常代表事件的对象。</p><p>“星型模式”这个名字来源于这样一个事实,即当表关系可视化时,事实表在中间,由其它维度表包围;与这些表的连接就像星星的光芒。</p><p>该模式的一个变体称为<strong>雪花模式</strong>,其中的维度被进一步细分为子空间。雪花模式比星型模式更规范化,但是星型模式通常是首选,主要是因为对于分析人员,星型模式使用起来更简单。</p><p>在上面的例子中出现的 dim_product 表,每一行都可以再次引用品牌和类别做为外键,不是将其做为字符串直接存储在dim_product 表中。</p><h2 id="列存储"><strong>列存储</strong></h2><p>数据仓库中的数据会达到PB这个量级,查询是与OLAP不同的。</p><p><strong>分析人们是否更倾向于购买新鲜水果或糖果,这取决于一周中的哪一天</strong></p><pre><code>SELECT dim_date.weekday, dim_product.category, SUM(fact_sales.quantity) AS quantity_soldFROM fact_sales JOIN dim_date ON fact_sales.date_key = dim_date.date_key JOIN dim_product ON fact_sales.product_sk = dim_product.product_skWHERE dim_date.year = 2013 AND dim_product.category IN ('Fresh fruit', 'Candy')GROUP BY dim_date.weekday, dim_product.category;</code></pre><p>我们如何有效地执行这个查询?</p><p>一个数据仓库可能会有数百列,不过在数据分析时,往往只需要其中的四到五列即可,如何让这样的查询更加高效呢。</p><p>一个很自然的想法就是,何不把每个列单独存在一个文件中呢。</p><p>面向列的存储背后的想法很简单:不要将所有来自一行的值存储在一起,而是将来自每一列的所有值存储在一起。如果每个列存储在一个单独的文件中,查询只需要读取和解析查询中使用的那些列,这可以节省大量的工作。</p><figure><img src="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-10.png" alt="列存储示意图" /><figcaption aria-hidden="true">列存储示意图</figcaption></figure><h3 id="列压缩"><strong>列压缩</strong></h3><p>从上面的图不难发现,每一列的属性相似度很高。我们不难想出,这样的形式很有利于压缩。</p><p>在数据仓库中有很多中压缩方式,位图编码是特别有效的一种。</p><p><strong>位图编码:</strong>通常情况下,一列中不同值的数量与行数相比较小(例如,零售商可能有数十亿的销售交易,但只有100,000个不同的产品)。现在我们可以得到一个有 n 个不同值的列,并把它转换成 n 个独立的位图:每个不同值的一个位图,每行一位。如果该行具有该值,则该位为 1 ,否则为 0 。</p><figure><img src="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-11.png" alt="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-11.png" /><figcaption aria-hidden="true">https://vonng.gitbooks.io/ddia-cn/content/img/fig3-11.png</figcaption></figure><p>如果 n 非常小(例如,国家/地区列可能有大约200个不同的值),则这些位图可以每行存储一位。但是,如果n更大,大部分位图中将会有很多的零(我们说它们是稀疏的)。在这种情况下,位图可以另外进行游程编码,如<a href="https://vonng.gitbooks.io/ddia-cn/content/fig3-11.png">图3-11</a>底部所示。这可以使列的编码非常紧凑。</p><p>这些位图索引非常适合数据仓库中常见的各种查询。例如:</p><pre><code>WHERE product_sk IN(30,68,69)</code></pre><p>例如这样子的查询,可以直接计算三个位图的按位或完成。</p><pre><code>WHERE product_sk = 31 AND store_sk = 3</code></pre><p>这样的查询可以通过按位与完成,因为列存储中,所有列的顺序是相同的。</p><p>此外对于不同种类的数据,也有各种不同的压缩方案,不一一介绍啦。</p><blockquote><p><strong>面向列的存储和列族</strong></p></blockquote><blockquote><p>Cassandra和HBase有一个列族的概念,他们从Bigtable继承【9】。然而,把它们称为面向列是非常具有误导性的:在每个列族中,它们将一行中的所有列与行键一起存储,并且不使用列压缩。因此,Bigtable模型仍然主要是面向行的。</p></blockquote><h3 id="内存带宽和向量处理"><strong>内存带宽和向量处理</strong></h3><p>数据仓库超大数据的计算瓶颈:</p><ol type="1"><li>数据从磁盘加载到内存</li><li>内存带宽用于CPU缓存(避免分支错误预测)</li></ol><p>面向列的存储有利于高效利用CPU周期。例如,,查询引擎可以将大量压缩的列数据放在CPU的L1缓存中,然后在紧密的循环中循环(即没有函数调用)。</p><p>诸如前面位图提到的按位AND和OR的运算符,可被设计成这样的列压缩数据块进行操作。这种技术被称为矢量化处理。</p><h2 id="列存储中的排序顺序"><strong>列存储中的排序顺序</strong></h2><p>在列存储中,存储行的顺序并不一定很重要(因为大多数操作是聚合操作)。按插入顺序存储它们是最简单的,因为插入一个新行就意味着附加到每个列文件。但是,我们可以选择强制执行一个命令,就像我们之前对SSTables所做的那样,并将其用作索引机制。</p><p>注意,每列独自排序是<strong>没有意义</strong>的,因为那样我们就不会知道列中的哪些项属于同一行。我们只能重建一行,因为我们知道一列中的第k项与另一列中的第k项属于同一行。</p><p>排序后的好处:</p><ul><li>排序键的查询速度会加快</li><li>可以帮助进一步压缩列</li></ul><h3 id="几个不同的排序顺序"><strong>几个不同的排序顺序</strong></h3><p>为了保证数据安全,我们通常不会只保存一份数据仓库。既然如此,不妨存储不同方式排序的冗余数据,以便在处理查询时,可以选择最适合的特定查询模式的排序版本。</p><p>商业数据仓库 Vertica 采用了这样的方法。</p><h2 id="列存储的写操作"><strong>列存储的写操作</strong></h2><p>列存储的初衷是面向大量数据的读操作的,不难想到,列存储的写操作会相对困难。</p><p>B-tree 的更新方式对于压缩的列是不可能的,为什么?(考虑插入新的一行后,其中各列的位置变化)</p><p>好在LSM-tree 是一个很好的解决方案。所有的写操作首先进入一个内存中的存储,在这里它们被添加到一个已排序的结构中,并准备写入磁盘。内存中的存储是面向行还是列的,这并不重要。当已经积累了足够的写入数据时,它们将与磁盘上的列文件合并,并批量写入新文件。</p><p>查询优化器会对用户隐藏上述的技术细节,因此,数据分析师的眼中,更新的数据可以立即反映在稍后的查询中。</p><h2 id="聚合数据立方体和物化视图"><strong>聚合:数据立方体和物化视图</strong></h2><p>并不是每个数据仓库都必定是一个列存储:传统的面向行的数据库和其他一些架构也被使用。然而,对于专门的分析查询,列式存储可以显著加快,所以它正在迅速普及。</p><p>数据仓库的另一个值得一提的是物化聚合。如前所述,数据仓库查询通常涉及一个聚合函数,如SQL中的COUNT,SUM,AVG,MIN或MAX。为什么不创建一个缓存保存这种结果呢?</p><p>创建这种缓存的一种方式是物化视图。在关系数据模型中,它通常被定义为一个标准(虚拟)视图:一个类似于表的对象,其内容是一些查询的结果。不同的是,物化视图是查询结果的实际副本,被实际的写在硬盘中,而虚拟视图只是编写查询的快捷方式。</p><p>当底层数据发生变化时,物化视图需要更新,因为它是数据的非规范化副本。数据库可以自动完成,但是这样的更新使得写入成本更高,因此 OLTP 中一般不常用。</p><p>物化视图的常见特例称为数据立方体或OLAP立方。它是按不同维度分组的聚合网格。如图所示。</p><figure><img src="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-12.png" alt="https://vonng.gitbooks.io/ddia-cn/content/img/fig3-12.png" /><figcaption aria-hidden="true">https://vonng.gitbooks.io/ddia-cn/content/img/fig3-12.png</figcaption></figure><p><strong>数据立方的两个维度,通过求和聚合</strong></p><p>物化数据立方体的优点是某些查询变得非常快,因为它们已经被有效地预先计算了。缺点是数据立方体不具有查询原始数据的灵活性。例如,没有办法计算哪个销售比例来自成本超过100美元的项目,因为价格不是其中的一个维度。</p><h2 id="本章小结"><strong>本章小结</strong></h2><p>在本章中,我们试图深入了解数据库如何处理存储和检索。将数据存储在数据库中会发生什么,以及稍后再次查询数据时数据库会做什么?</p><p>在高层次上,我们看到存储引擎分为两大类:优化 <strong>事务处理(OLTP)</strong> 或 <strong>在线分析(OLAP)</strong> 。这些用例的访问模式之间有很大的区别:</p><ul><li>OLTP系统通常面向用户,这意味着系统可能会收到大量的请求。为了处理负载,应用程序通常只访问每个查询中的少部分记录。应用程序使用某种键来请求记录,存储引擎使用索引来查找所请求的键的数据。磁盘寻道时间往往是这里的瓶颈。</li><li>数据仓库和类似的分析系统会低调一些,因为它们主要由业务分析人员使用,而不是由最终用户使用。它们的查询量要比OLTP系统少得多,但通常每个查询开销高昂,需要在短时间内扫描数百万条记录。磁盘带宽(而不是查找时间)往往是瓶颈,列式存储是这种工作负载越来越流行的解决方案。</li></ul><p>在OLTP方面,我们能看到两派主流的存储引擎:</p><p><strong>日志结构学派</strong></p><p>只允许附加到文件和删除过时的文件,但不会更新已经写入的文件。 Bitcask,SSTables,LSM树,LevelDB,Cassandra,HBase,Lucene等都属于这个类别。</p><p><strong>就地更新学派</strong></p><p>将磁盘视为一组可以覆写的固定大小的页面。 B树是这种哲学的典范,用在所有主要的关系数据库中和许多非关系型数据库。</p><p>日志结构的存储引擎是相对较新的发展。他们的主要想法是,他们系统地将随机访问写入顺序写入磁盘,由于硬盘驱动器和固态硬盘的性能特点,可以实现更高的写入吞吐量。在完成OLTP方面,我们通过一些更复杂的索引结构和为保留所有数据而优化的数据库做了一个简短的介绍。</p><p>然后,我们从存储引擎的内部绕开,看看典型数据仓库的高级架构。这一背景说明了为什么分析工作负载与OLTP差别很大:当您的查询需要在大量行中顺序扫描时,索引的相关性就会降低很多。相反,非常紧凑地编码数据变得非常重要,以最大限度地减少查询需要从磁盘读取的数据量。我们讨论了列式存储如何帮助实现这一目标。</p><p>作为一名应用程序开发人员,如果您掌握了有关存储引擎内部的知识,那么您就能更好地了解哪种工具最适合您的特定应用程序。如果您需要调整数据库的调整参数,这种理解可以让您设想一个更高或更低的值可能会产生什么效果。</p><p>尽管本章不能让你成为一个特定存储引擎的调参专家,但它至少有大概率使你有了足够的概念与词汇储备去读懂数据库的文档,从而选择合适的数据库。</p>]]></content>
<categories>
<category> 技术闲聊 </category>
</categories>
<tags>
<tag> 技术闲聊 </tag>
<tag> 开源社区 </tag>
</tags>
</entry>
<entry>
<title>DRG 与 ICD10 编码相关论文阅读分享</title>
<link href="/2022/01/25/DRG-%E4%B8%8E-ICD10-%E7%BC%96%E7%A0%81%E7%9B%B8%E5%85%B3%E8%AE%BA%E6%96%87%E9%98%85%E8%AF%BB%E5%88%86%E4%BA%AB/"/>
<url>/2022/01/25/DRG-%E4%B8%8E-ICD10-%E7%BC%96%E7%A0%81%E7%9B%B8%E5%85%B3%E8%AE%BA%E6%96%87%E9%98%85%E8%AF%BB%E5%88%86%E4%BA%AB/</url>
<content type="html"><![CDATA[<h1 id="drg-与-icd10-编码相关论文阅读分享">DRG 与 ICD10 编码相关论文阅读分享</h1><h2 id="相关概念">相关概念</h2><ul><li><h3 id="关于drg">关于DRG</h3></li></ul><p>疾病诊断相关分组(Diagnosis-Related Groups,DRG)诞生于上世纪60 年代末的美国。上世纪80 年代,美国率先将DRG 用于医疗保险定额支付,现今多数发达国家社会医疗保险都采用这一工具进行预算、资源配置管理或购买医疗服务。从本质上讲,DRG 既能用于支付管理,也能用于预算管理,同时还是促进医疗服务质量提升的有效工具。</p><p>疾病诊断相关分组(Diagnosis-Related Groups,DRG)诞生于上世纪60 年代末的美国。上世纪80 年代,美国率先将DRG 用于医疗保险定额支付,现今多数发达国家社会医疗保险都采用这一工具进行预算、资源配置管理或购买医疗服务。从本质上讲,DRG 既能用于支付管理,也能用于预算管理,同时还是促进医疗服务质量提升的有效工具。</p><ul><li><h3 id="关于主要诊断">关于主要诊断</h3></li></ul><p>DRGs分组对于疾病主要诊断的选择要求很高,因为在DRGs分组中,主要诊断是分组的最基础数据。主要诊断选择的正确与否,直接影响到DRGs分组结果,继而对医院绩效评估造成很大影响。</p><ul><li>卫健委在《住院病案首页数据填写质量规范》关于主要诊断的定义:</li></ul><p>主要诊断一般是患者住院的理由,原则上应选择 本次住院对患者健康危害最大、消耗医疗资源最多、住院时间最长的疾病诊断。</p><ul><li>Australian Institute of Health Welfare 对主要诊断的定义:</li></ul><p>The principal diagnosis is defined as the diagnosis established after study to be chiefly responsible for occasioning the patient’s episode of care in hospital.</p><ul><li><h3 id="为什么选了这三篇paper">为什么选了这三篇paper</h3></li></ul><p>找论文的过程过程是这样的,现在知网找,发现没有相关工作。abstract里给主要诊断的翻译是“Main diagnosis”或者“primary diagnosis”。结果证明作者全是机翻的,谷歌学术里这个翻译啥也没找到。</p><p>后面在澳洲的网站发现里发现正确的翻译应该是“principal diagnosis”。(虽然模型代码也把主要诊断给命名成 primary_diagnosis 吧)</p><p>后面发现直接找“principal diagnosis”的论文多是医学相关,或者本质是在做 ICD 编码的工作,没有体现主要诊断的特殊要求。于是直接选择了两篇 ICD 编码相关的和 DRG 相关的 paper。</p><table><colgroup><col style="width: 10%" /><col style="width: 29%" /><col style="width: 29%" /><col style="width: 29%" /></colgroup><thead><tr class="header"><th><strong>类型</strong></th><th><strong>描述</strong></th><th><strong>代表作</strong></th><th><strong>代表作思想</strong></th></tr></thead><tbody><tr class="odd"><td>医学相关</td><td>用医学知识通过某种症状确定主要诊断</td><td>Extracting principal diagnosis, co-morbidity and smoking status for asthma research: evaluation of a natural language processing system</td><td>几乎是纯医学知识对某一个单病种的判断,略过</td></tr><tr class="even"><td>与“主要诊断”字眼相关的</td><td>存在主要诊断(principal diagnosis)相关内容,但实际内容是ICD编码</td><td>Implementation of a Medical Coding Support System by Combining Approaches: NLP and Machine Learning Computer-Assisted Diagnostic Coding: Effectiveness of an NLP-based approach using SNOMED CT to ICD-10 mappings</td><td>1.用提取的病历特征和传统机器学习预测编码 2.通过系统化临床医学术语集的相关性预测 (质量都比较一般)</td></tr><tr class="odd"><td>ICD编码相关的</td><td>较为流行的方向,直接通过病历为患者编码的研究,都视作多标签分类问题</td><td>Automatic ICD-9 coding via deep transfer learning Modeling Diagnostic Label Correlation for Automatic ICD Coding</td><td>1.通过从MeSH的迁移学习得到预测结果 2.通过给ICD编码的预测得分分组计算相关性提高准确率</td></tr><tr class="even"><td>DRGs分组与NLP相关的</td><td>直接通过模型为相关病历确定DRG分组</td><td>Early prediction of diagnostic-related groups and estimation of hospital cost by processing clinical notes</td><td>通过先用NLP技术预测患者的DRG分组,再预测患者的开销情况(CMI)</td></tr></tbody></table><h2 id="论文介绍">论文介绍</h2><h3 id="automatic-icd-9-coding-via-deep-transfer-learning">1. Automatic ICD-9 coding via deep transfer learning</h3><p>这篇paper的动机是 MIMIC 这个数据太小了,只有5万多份数据,平均每个编码只能有8个样本,难以训练。相对来讲 BioASQ3 是一个更大的数据集,平均每个 label 的数量也多一些。</p><figure><img src="https://img-blog.csdnimg.cn/39f4de2b4c7f48baa4caa0ad8b3e6d01.png#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>这篇文章相对早一些,因此迁移学习的实现方式也并不复杂,通过直接固定 Multi-scale CNN 的参数,在MIMIC数据集上重新训练即可得到很好的结果:</p><figure><img src="https://img-blog.csdnimg.cn/ec88eec3a8e648e2b1ae8e05a30ac77f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>通过与其它模型的对比,可以发现模型预测的能力准确率还是不错的(以当时的标准来看)。此外,与本身的模型但是没有迁移学习做比较,可以发现迁移的这个过程还是很有效的。</p><figure><img src="https://img-blog.csdnimg.cn/644b892b271d493f96cbc753dae0b67d.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><h3 id="modeling-diagnostic-label-correlation-for-automatic-icd-coding">2. Modeling Diagnostic Label Correlation for Automatic ICD Coding</h3><p>作者在这篇文章中提出了要使用预测的 label 之间的相关性来帮助提高预测的准确率。因此预测模型分为了两部分,第一部分用来直接计算 ICD 编码的可能概率,并将可能的组合分组(依据是概率乘积的大小);第二部分按照得到的分组,通过相关的模型计算 ICD 编码的相关性,对小组进行重排序。一个很有趣的是,这篇paper中用来直接计算 ICD 编码概率的模型都是来自于其他人的工作。(即下图中的predictor) <img src="https://img-blog.csdnimg.cn/481a3986a42a4786badd8c2f8c177bca.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /></p><p><em>关于label之间的相关性,文中有这样一个例子:模型会同时给便秘和腹泻很高的预测概率,但我们知道这样的情况是不合逻辑的,这就是 lebel 间的相关性</em></p><p>作者通过MADE和Mask-SA两种模型来实现集合内的Reranking过程。需要注意的是,虽然两个模型都是用来衡量相关性的,但是最后小组的 score 仍然与每个 ICD 编码原来的分数有关。</p><figure><img src="https://img-blog.csdnimg.cn/7854ca94a9ca46fb8bfbcf9475d432b4.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>两种模型的概率表达:</p><ul><li>MADE:按随机顺序进行自回归分解来估计其联合概率</li></ul><figure><img src="https://img-blog.csdnimg.cn/72cedd070ce040bbaf871dde0e1c61e6.png#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><ul><li>Mask-SA:mask一个ICD编码后计算概率,类似于Transformer(没有位置坐标)</li></ul><figure><img src="https://img-blog.csdnimg.cn/9520db0254ff4e799832c9726b135e17.png#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>通过这样的步骤,我们可以看到原有模型的效果提升非常明显:</p><figure><img src="https://img-blog.csdnimg.cn/8b1442d005214bd69aadc2dc5c7576d7.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><h3 id="early-prediction-of-diagnostic-related-groups-and-estimation-of-hospital-cost-by-processing-clinical-notes">3. Early prediction of diagnostic-related groups and estimation of hospital cost by processing clinical notes</h3><p>动机是提前识别出可能会有较大开销的住院情况。(见下图)</p><figure><img src="https://img-blog.csdnimg.cn/ac52dfd1ae7741d0ab8717029c6c5dcd.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>即,病人的治疗还没有完成(更不必说编码、DRG分类和支付了),就大致估计一下病人的未来的开销情况。</p><p>预测分为两种DRG,Medicare Severity (MS) DRG or All Patient Refined (APR) DRG 。排除了与新生儿或后期护理相关的代码,MS-DRG的代码为738个,APR-DRG的代码为1136个。</p><p>模型分为两部分,第一部分通过病历预测DRG分类,第二部分通过分类和对应的权值预测住院开销。使用convolutional attention for multi-label classification (CAML)来完成DRGs的分类任务。得到DGR分组的权重,选择最高i的一个最为DRG分组。CAML模型是一个可以用来做 ICD 10 编码的模型,这里作者简单修改了输出,重新训练后直接用病历文本预测患者的DRG分组。CAML 的模型单元如下:</p><figure><img src="https://img-blog.csdnimg.cn/42287adc4acc47a7814f192efa712f22.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_16,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>在得到DRG分组后,直接乘以DRG分组对应的权重即可得到预测的开销。在源代码中,有这样的一张权重表:</p><figure><img src="https://img-blog.csdnimg.cn/6f8b16a5cd084b8d844a8a629fcdeea3.png#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>由于作者假定的预测节点在病人治疗结束前,因此模型并不会获得全部病历数据,而是获得一定的时间之前的病历数据。效果如下:</p><figure><img src="https://img-blog.csdnimg.cn/659727a2988541c6925ec00f8e22e7b9.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_18,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述" /><figcaption aria-hidden="true">在这里插入图片描述</figcaption></figure><p>HPA 是患者进 ICU 后的小时数(有的病人会在进 ICU 前已经住院有病历文本记录,因此可以为负值)可以看到,随着时间推进,模型得到的病历文本也会越来越多。衡量估计准确率的 CMI Error也会逐渐降低。这是符合直觉的。</p><h2 id="会后总结">会后总结</h2><p>分享论文后大家给了很多看法,讨论的非常愉快,这里说一下自己的收获~</p><p>第一篇 paper 用了迁移学习的方法取得了很好的效果。可能是由于是期刊上的文章发表周期较长,用现在直接固定模型的参数来完成迁移学习显得有些简单了。不过值得注意的是,国外在数据库资料这方面确实要走在了我们的前面。如果可以把一些办法把国外的数据集做训练后迁移回到我们的医院数据上来,或许也是一个不错的办法。(老实讲,我很赞同这个想法,因为国内医院的病历质量确实有待提高)</p><p>第二篇paper做出了很不错的成果,通过架构提高了原来模型的准确率(而且还是 naacl 这样的顶会)。提高了 ICD 编码准确率用的两个模型也很精妙。不过像“大哥”说的,其它人的模型有一些不完美的的地方是非常正常的,通过一个架构的优化提高一些准确率不足为奇。这篇 paper 难免有些用一些小 trick 之嫌。即便是 naacl 这样的顶会,有些工作是要靠作者来用一些很巧妙的手法来写(私以为就是吹牛),才会体现的很厉害的。</p><p>第三篇 paper 是我原本认为动机最“鸡肋”的一篇,毕竟人都进ICU了还预测开销有什么意义,难道医院预测出来开销很大还能赶人么()。不过考虑到一个患者住院时期可能会很长,高达数个月的情况,而医院需要每个月做一次预算,那么这时候做一个粗糙的预测也可能被医院需要。这样的工作还是有一定的意义的,也许可以帮上现在很多医院的忙。</p><p>毕竟人都进ICU了还预测开销有什么意义,难道医院预测出来开销很大还能赶人么()。不过考虑到一个患者住院时期可能会很长,高达数个月的情况,而医院需要每个月做一次预算,那么这时候做一个粗糙的预测也可能被医院需要。这样的工作还是有一定的意义的,也许可以帮上现在很多医院的忙。</p><p>此外就是,以后看论文时一定要好好总结清楚数据集的具体格式,以及模型用到了数据集哪些部分的数据训练得到的模型,这是和模型的结构一样重要的。</p>]]></content>
<categories>
<category> 自然语言处理 </category>
</categories>
<tags>
<tag> 论文阅读 </tag>
<tag> 深度学习 </tag>
</tags>
</entry>
<entry>
<title>Windows简单暴力入门TDengine</title>
<link href="/2022/01/09/%E7%AE%80%E5%8D%95%E6%9A%B4%E5%8A%9B%E5%85%A5%E9%97%A8TDengine/"/>
<url>/2022/01/09/%E7%AE%80%E5%8D%95%E6%9A%B4%E5%8A%9B%E5%85%A5%E9%97%A8TDengine/</url>
<content type="html"><![CDATA[<h1>简介</h1><p>作者:最甜甜的小草莓</p><h2 id="本文面向什么样的读者">本文面向什么样的读者</h2><p>TDengine是一个新兴的时序型数据库,可以参见<a href="https://github.com/taosdata/TDengine">GitHub项目</a>。学习一个开源项目,最直接的方式就是先成为一个用户,先把项目运行一下试试看。</p><p>数据库现在的行业趋势好的让人羡慕,<a href="https://www.forbeschina.com/business/55480">涛思数据完成4,700万美元B轮融资 经纬中国领投</a>。要是去年毕业还想投个简历呢(可惜不小心读了个研究生)。受此影响,现在开始看DDIA这本书了,不知道研究生毕业是不是来得及</p><p><a href="tf.wiki">简单粗暴tensorflow</a>是我个人很喜欢的一个教程。很多代码,可以暂时先不详细了解原理,先 run 一下或许有的问题就不存在了。本文面向:</p><ul><li>没有数据库经验,想要简单体验一下TDengine的读者</li><li>想要快速在Windows上运行一下TDengine</li><li>没有参与过开源,想要成为 TDengine 的 contributor (直接最后一章)</li></ul><h2 id="TDengine软件简介">TDengine软件简介</h2><hr><p>TDengine软件分为服务器、客户端和报警模块三部分,目前2.0版服务器仅能在Linux系统上安装和运行,后续会支持Windows、Mac OS等系统。客户端可以在Windows或Linux上安装和运行。任何OS的应用也可以选择RESTful接口连接服务器taosd。CPU支持X64/ARM64/MIPS64/Alpha64,后续会支持ARM32、RISC-V等CPU架构。 您可根据需求选择通过源码或者安装包来安装。</p><hr><p>阅读项目相关文档,在Windows系统,服务端是不能支持直接安装的,因此我们使用 Docker 来在虚拟机中安装服务端;</p><p>之后,我们在直接安装客户端并连接虚拟机中Docker虚拟机</p><p>最后,分享一个我个人的经历,如何为 TDengine 在Github上的开源项目贡献代码</p><h1>服务端安装(Docker)</h1><h2 id="下载并安装Docker">下载并安装Docker</h2><p>关于 Docker 安装可以参考<a href="https://tke-2gipdtus3676b965-1251009918.ap-shanghai.app.tcloudbase.com/docs/docker-start">这篇文章</a>,里面有更为详细的教程。</p><p>首先在 Docker <a href="https://www.docker.com/get-started">官网</a>下载</p><p>点击小鲸鱼图标,在弹出菜单里选择“Preferences”,点击Docker Engine,在右侧json配置文件处添加registry-mirrors配置项,添加时注意标点符号是英文以及不要输多或输少了,(输错了底部会有红色报错提示):</p><pre><code>"registry-mirrors": [ "https://mirror.ccs.tencentyun.com/"],</code></pre><p>或者你可以自行百度清华的镜像源</p><h2 id="安装并配置TDengine">安装并配置TDengine</h2><p>接下来的部分参考了官方<a href="https://www.taosdata.com/cn/documentation/getting-started/docker">这篇文档</a></p><p>先运行</p><pre><code>docker run -d -p 6030-6041:6030-6041 -p 6030-6041:6030-6041/udp tdengine/tdengine</code></pre><p>如果你的docker没有下载TDengine,会下载后安装</p><p>之后配置TDengine</p><pre><code>docker run -d --name tdengine --hostname="tdengine-server" -v ~/work/taos/log:/var/log/taos -v ~/work/taos/data:/var/lib/taos -p 6030-6041:6030-6041 -p 6030-6041:6030-6041/udp tdengine/tdengine</code></pre><h2 id="运行TDengine">运行TDengine</h2><p>输入 <code>docker ps</code>查看当前运行的的docker列表。上一步的配置名称可能不生效,所以请记下你的 CONTAINER ID</p><p>之后输入 <code>docker exec -it <上面的CONTAINER ID> /bin/bash </code>就可以进入容器开发了</p><p>在容器里输入 <code>taos</code>就可以执行命令了</p><p>输入下面这段代码尝试数据库的使用</p><pre><code>create database db;use db;create table t (ts timestamp, a int);insert into t values ('2019-07-15 00:00:00', 1);insert into t values ('2019-07-15 01:00:00', 2);select * from t;drop database db;</code></pre><p>至此,通过docker的服务端安装就完成了。</p><h1>客户端安装(Windows)</h1><h2 id="安装Windows版本的客户端">安装Windows版本的客户端</h2><p>直接去<a href="https://www.taosdata.com/cn/getting-started/#%E9%80%9A%E8%BF%87%E5%AE%89%E8%A3%85%E5%8C%85%E5%AE%89%E8%A3%85">官网</a>下载并安装即可</p><h2 id="修改本地Host">修改本地Host</h2><p>如果你发现先命令行中存在有一些数据库操作可以,但是另一些数据库操作不可以。类似下图:<img src="https://img-blog.csdnimg.cn/97edbb3c79a84cde84db1d14d076f112.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述"></p><p>参考了<a href="https://blog.csdn.net/weixin_42845682/article/details/117549536">这篇文章</a>原理与FQDN有关,详细了解<a href="https://www.taosdata.com/blog/2020/09/11/1824.html">这里</a>,下面我们直接给出解决办法。</p><p>在服务端输入 <code>hostname -f</code>,得到下面的结果并复制得到的结果<img src="https://img-blog.csdnimg.cn/e2d75105ef6940ad89f3fb3acd04b855.png#pic_center" alt="在这里插入图片描述"></p><p>由于我们在本机运行,所以直接用 127.0.0.1 就可以了,修改 C:\Windows\System32\drivers\etc 这个目录下面的 host.ics 文件,在最下面添加</p><pre><code>127.0.0.1 <前面得到的hostname></code></pre><p>这样服务端所有数据库命令就都可以正常执行了</p><h2 id="在客户端中操作数据库">在客户端中操作数据库</h2><p>现在,在taos shell中,就可以正常的执行数据库命令了还是尝试前面的代码来测试数据库</p><pre><code>create database db;use db;create table t (ts timestamp, a int);insert into t values ('2019-07-15 00:00:00', 1);insert into t values ('2019-07-15 01:00:00', 2);select * from t;drop database db;</code></pre><h1>从 good first issue 开始成为TDengine的Contributor</h1><p>首先,没有接触过开源的同学请不要对这个部分有畏惧心理,代码的难度大概只有leetcode上“简单”的水平。在北邮校园内有幸听过 TDengine 创始人和boss的一场讲座,他非常鼓励同学们参与开源项目。而 TDengine 里面的 good first issue 难度也并不高,非常适合大家尝试一下。</p><p>首先在GitHub上的打开 good first issue 的 <a href="https://github.com/taosdata/TDengine/labels/good%20first%20issue">issue 页面</a></p><p><img src="https://img-blog.csdnimg.cn/1c0ff8f6d01144a381643e40529fff1c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述"></p><p>选择一个你觉得简单的 issue,需要一定的C语言基础。不过 good first issue 都比较友好。每一条 Issue 都不一样,具体如何解决可以参考官方微信公众号上的<a href="https://mp.weixin.qq.com/s/mssWF5AoUG-vt-b5_QMtRA">这篇文章</a></p><p>具体在GitHub提交修改后的代码,以下面这个issue为例:<img src="https://img-blog.csdnimg.cn/9e32fc3288f94de88d4ea3b40a14f0f3.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述"></p><p>进入需要修改文件,点击edit<img src="https://img-blog.csdnimg.cn/e94fe87c55e3413aac9303a86963d674.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述"></p><p>修改代码后,点击<img src="https://img-blog.csdnimg.cn/3fdc68fd16a64058b77e43afefe55f61.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2pzdmVj,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center" alt="在这里插入图片描述">在GitHub上完成一个 good first issue 不算很难,不过已经是一次很好的开源实践了。真的很轻松,强烈建议每个朋友亲自动手试一试~</p><h1>后记</h1><p>最近实习和学校实在事情太多了,早就想写这么一篇结果一拖再拖,十分羞愧。我也只是一个数据库刚刚入门的小菜鸟,两端长的实习分别是前端和NLP相关的,后端知识也是走一步学一步。说实话,这个过程其实也很快乐啊。</p><p>期间被催了好多次,还好不拿工资也就无所谓了233</p><p>还记得一年前最开始实习的一家小厂,和那里的老板关系很好,就是中科大出来的。跟他闲聊的过程中,感觉科大好多企业家,听他讲在中科大创业群里的见闻。加上现在实习的科大讯飞,今天TDengine的创始人陶总,真的自己到处都在接触中科大的企业家。有时候不禁感慨,北邮人在互联网明明贡献了最多最优秀的程序员,企业家却并不多。吾辈仍需要自强不息啊!</p>]]></content>
<categories>
<category> 技术闲聊 </category>
</categories>
<tags>
<tag> 技术闲聊 </tag>
<tag> 开源社区 </tag>
</tags>
</entry>
<entry>
<title>论坛的打油诗两则</title>
<link href="/2021/12/06/%E8%AE%BA%E5%9D%9B%E7%9A%84%E6%89%93%E6%B2%B9%E8%AF%97%E4%B8%A4%E5%88%99/"/>
<url>/2021/12/06/%E8%AE%BA%E5%9D%9B%E7%9A%84%E6%89%93%E6%B2%B9%E8%AF%97%E4%B8%A4%E5%88%99/</url>
<content type="html"><![CDATA[<p>《江城子·辛丑年十月廿四观悄悄话有感》</p><pre><code>北邮人发匿名忙。互联网,哪家强。前端后端,还是算法香。阿里腾讯宇宙厂,都不难,有手上。兄弟学校不要狂。九八五,又何妨?感觉就业。。。不如北邮强。若问导师好不好,都不行,赶紧run。</code></pre><p>《沁园春·北邮》</p><pre><code>北邮风光,西土城边,论坛治校。看称职导员,未开刃刀;外卖佳肴,无人来盗。招生尽力,休要争吵,分数多高就多高;待九月,看渣硕菜鸟,百万总包。北邮如此多娇,引无数学子竟折腰。惜中科理航,难以挣刀;电子科大,西南一角;道口体校,分数最高,就业还是一样招;皆渣矣,问哪里最好,还是本校~</code></pre><p>闲暇做调侃,以后不会再写了,没啥新意了</p>]]></content>
<categories>
<category> 生活 </category>
</categories>
<tags>
<tag> 北邮人论坛 </tag>
<tag> 整活 </tag>
</tags>
</entry>
<entry>
<title>给果园电管同学的考研经验分享以及一些答疑</title>
<link href="/2021/11/26/%E7%BB%99%E6%9E%9C%E5%9B%AD%E7%94%B5%E7%AE%A1%E5%90%8C%E5%AD%A6%E7%9A%84%E8%80%83%E7%A0%94%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB%E4%BB%A5%E5%8F%8A%E4%B8%80%E4%BA%9B%E7%AD%94%E7%96%91/"/>
<url>/2021/11/26/%E7%BB%99%E6%9E%9C%E5%9B%AD%E7%94%B5%E7%AE%A1%E5%90%8C%E5%AD%A6%E7%9A%84%E8%80%83%E7%A0%94%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB%E4%BB%A5%E5%8F%8A%E4%B8%80%E4%BA%9B%E7%AD%94%E7%96%91/</url>
<content type="html"><![CDATA[<h1 id="给果园电管同学的考研经验分享以及一些答疑">给果园电管同学的考研经验分享以及一些答疑</h1><p>今天应本科的导员邀请给果园大四的同学分享了一下考研经验。老实讲我自己真的很菜,本科只坐在下面听大佬讲的那种水平。现在居然能轮到我分享经验了。PPT我放在后面了,好不好总之就那样啦。</p><p>分享结束后有同学问了一些问题,用文字来统一回答一下吧(正好水一篇论坛)~</p><p>Q1: PPT中提到了数一真的很难,我做难题的时候也这么觉得,那么我还要做吗?</p><p>我的建议是,还是做一做,不要随便跳题。数一出现陌生题目很正常,还是要勇敢去做的。</p><p>我说的做数一崩溃了、破防了、做哭了都是正常存在的,因为这门课就是有些难度的。但这并不是让你不做,而是做破防了崩溃了做哭了也要习惯并接着做。</p><p>举例还是,我说一段代码可能会报错,而且无法预知。并不是说这段代码就不运行了,而是你要去try catch一下,要对异常有所准备。数一学破防了很正常,缓解一下心情,把异常接受了接着做就好了。</p><p>Q2: 可以讲一讲最后一个月日常的复习节奏吗?</p><p>我的话,因为考研只复习了三个月(严格来说78天),我的政治是最后一个月才开始复习的,之前一点也没有碰过(所以政治62分我是满意了)。所以我最后一个月有大量的时间在政治上,包括基础知识部分。很多同学复习的都很早,恐怕没有太大的参考意义。</p><p>不过呢,我觉得,<strong>复习和跑步一样,要找到属于自己的节奏</strong>。自己最习惯的节奏就是最好的。我当时复习的时候,图书馆需要抢座位的,大概6点50就要去抢座位,但是我本身体质又比较嗜睡,所以晚上八点多就回去睡觉了。如果你觉得早上九点状态才最好,也更契合考研的时间,那完全可以9点再去呀。</p><p>不过有一点是没错的,尽量在上午学上午考试的科目,下午学下午的科目,很有利在考场上保持状态。</p><p>Q3: 不要老讲心态心态啊,学习的实在的多讲一些啊</p><p>其实没有必要,都复习这么久了,大家对怎么学其实也该心里有数了。心里没数我自己几分钟也说不明白了。</p><p>更何况,我所见到的很多人考研失利,学不会的是少数,心态崩溃了不想学开始摆烂了的是多数。更何况,知识就那么多东西,大家都能学会,很多时候就是拼细节、拼认真。而一些细节的问题,最难的地方不是学不会,而是人在太过焦虑的情况下会忽视很多细节。</p><p>所以,真的,考研的同学每天抽一点时间出来专门整理自己的心态,这件事一点也不多余</p><p>Q4: 学长学长,考完研做后什么啊,你在的实验室或者不错的实习单位可以推荐一下吗?</p><p>(这个问题没人问,我自己编的,93589优秀传统,打个广告)</p><p>实验室的话,我们大组今年招生非常顺利,大概率不会有调剂名额了。所以。。。。如果你想要第一志愿报过来我想老师们还是欢迎本校同学的,但是调剂恐怕真的不可以了。也欢迎关注我们实验室的微信公众号了解一下情况。</p><p>实验室放实习,不打卡。</p><p><a href="http://mp.weixin.qq.com/s?__biz=MjM5MDk1MTg2OQ==&mid=2247483675&idx=1&sn=c2ecb26a1b67536ebc35932b275c96e2&chksm=a6bdb1c991ca38dfcb443db03422121cd514f9e7309e3a9f0fdc2e799286cdb6bf9b58426892&mpshare=1&scene=23&srcid=1127HLsGZDC783eKpALWWXAw&sharer_sharetime=1637942924097&sharer_shareid=5abe4b2073b77f18c97d8c11966b0e0c#rd">实验室微信公众号招生链接</a></p><p>关于实习的话,我认真推荐一下电信北研院的云所,那边的mentor也是我认识的一位果园老学长了,人很靠谱。岗位对技术要求相对低一些(不会上来考你两道算法题),钱也少些,活也轻松些,比较适合忙于考研准备不多但是技术底子好的同学。需要的话可以<strong>考完研</strong>(划重点)来给我发一下简历,我可以帮你改一下,或者直接实习的<a href="https://nowpick.nowcoder.com/w/intern/detail?jobId=35238">招聘链接</a>~</p><p>我的邮箱是 wjsvec%%%163.com 把%%% 换成@</p><p>下面是PPT全文:</p><figure><img src="https://i.loli.net/2021/11/27/SHIfQuKNYPMqhFo.png" alt="考研经验分享for果园 - 副本.png" /><figcaption aria-hidden="true">考研经验分享for果园 - 副本.png</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/tLnQwilDVsN8OK4.png" alt="幻灯片2.PNG" /><figcaption aria-hidden="true">幻灯片2.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/z3OZkDbHuQ7VBS6.png" alt="幻灯片3.PNG" /><figcaption aria-hidden="true">幻灯片3.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/DO65AJkPehmNKTr.png" alt="幻灯片4.PNG" /><figcaption aria-hidden="true">幻灯片4.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/exlMynT72Uas4BN.png" alt="幻灯片5.PNG" /><figcaption aria-hidden="true">幻灯片5.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/fnUsVpKov48ADNh.png" alt="幻灯片6.PNG" /><figcaption aria-hidden="true">幻灯片6.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/CY1AsRWNaOgXEUu.png" alt="幻灯片7.PNG" /><figcaption aria-hidden="true">幻灯片7.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/WpHwX9njOKA6PRx.png" alt="幻灯片8.PNG" /><figcaption aria-hidden="true">幻灯片8.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/BQpzyJF5jtrN9Tu.png" alt="幻灯片9.PNG" /><figcaption aria-hidden="true">幻灯片9.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/E1Kai2IHoRZl6OX.png" alt="幻灯片10.PNG" /><figcaption aria-hidden="true">幻灯片10.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/SKODFG8xkUEXRCP.png" alt="幻灯片11.PNG" /><figcaption aria-hidden="true">幻灯片11.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/TsCmOZq84MbPzeW.png" alt="幻灯片12.PNG" /><figcaption aria-hidden="true">幻灯片12.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/fw3KhOPJgy2Wrpt.png" alt="幻灯片13.PNG" /><figcaption aria-hidden="true">幻灯片13.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/2zLBTkSyUW9ro5v.png" alt="幻灯片14.PNG" /><figcaption aria-hidden="true">幻灯片14.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/EgH6L29yQc1N3jt.png" alt="幻灯片15.PNG" /><figcaption aria-hidden="true">幻灯片15.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/gxXFTbapCRAOK7s.png" alt="幻灯片16.PNG" /><figcaption aria-hidden="true">幻灯片16.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/6HXz1UALpx9OmlQ.png" alt="幻灯片17.PNG" /><figcaption aria-hidden="true">幻灯片17.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/14LsVgKSpYUbMxo.png" alt="幻灯片18.PNG" /><figcaption aria-hidden="true">幻灯片18.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/kHcCDLGVmfPxJ5M.png" alt="幻灯片19.PNG" /><figcaption aria-hidden="true">幻灯片19.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/aSTgjt1XeE2RLW8.png" alt="幻灯片20.PNG" /><figcaption aria-hidden="true">幻灯片20.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/WACZSRl2YrFBPHX.png" alt="幻灯片21.PNG" /><figcaption aria-hidden="true">幻灯片21.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/WUcjDmoPNp3b92J.png" alt="幻灯片22.PNG" /><figcaption aria-hidden="true">幻灯片22.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/JxljUSFNtXQTPyv.png" alt="幻灯片23.PNG" /><figcaption aria-hidden="true">幻灯片23.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/uWfeMoBJTA7sDtN.png" alt="幻灯片24.PNG" /><figcaption aria-hidden="true">幻灯片24.PNG</figcaption></figure><figure><img src="https://i.loli.net/2021/11/27/YGySHNm6k5TisDV.png" alt="考研经验分享for果园 - 副本25.png" /><figcaption aria-hidden="true">考研经验分享for果园 - 副本25.png</figcaption></figure>]]></content>
<categories>
<category> 技术闲聊 </category>
</categories>
<tags>
<tag> 技术闲聊 </tag>
<tag> 北邮人论坛 </tag>
<tag> A-soul </tag>
</tags>
</entry>
<entry>
<title>《非线性光纤光学》第四章第4题,我的解答</title>
<link href="/2021/11/21/%E3%80%8A%E9%9D%9E%E7%BA%BF%E6%80%A7%E5%85%89%E7%BA%A4%E5%85%89%E5%AD%A6%E3%80%8B%E7%AC%AC%E5%9B%9B%E7%AB%A0%E7%AC%AC4%E9%A2%98%EF%BC%8C%E6%88%91%E7%9A%84%E8%A7%A3%E7%AD%94/"/>
<url>/2021/11/21/%E3%80%8A%E9%9D%9E%E7%BA%BF%E6%80%A7%E5%85%89%E7%BA%A4%E5%85%89%E5%AD%A6%E3%80%8B%E7%AC%AC%E5%9B%9B%E7%AB%A0%E7%AC%AC4%E9%A2%98%EF%BC%8C%E6%88%91%E7%9A%84%E8%A7%A3%E7%AD%94/</url>
<content type="html"><![CDATA[<h1 id="非线性光纤光学第四章第4题我的解答">《非线性光纤光学》第四章第4题,我的解答</h1><p>题目:画出KDP晶体的角度调谐曲线</p><figure><img src="https://i.loli.net/2021/11/21/bGcUdyK4NCPJ9Mp.jpg" alt="mmexport1637455043064.jpg" /><figcaption aria-hidden="true">mmexport1637455043064.jpg</figcaption></figure><p>(1)</p><p>前辈有题解了咱这里就偷个懒咯~</p><figure><img src="https://i.loli.net/2021/11/21/D3PV7oUGAFqrOy9.jpg" alt="第一问题解.jpg" /><figcaption aria-hidden="true">第一问题解.jpg</figcaption></figure><p>代码也很简单,把公式抄一抄带一带就好了,注意的话,书上的每个常数都别简化估算,全部写进代码里,不然算不出精确结果哒。</p><div class="sourceCode" id="cb1"><pre class="sourceCode matlab"><code class="sourceCode matlab"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="va">lamda</span> <span class="op">=</span> <span class="fl">347.2</span><span class="op">;</span></span><span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a><span class="va">lamda_p</span> <span class="op">=</span> <span class="va">lamda</span><span class="op">*</span><span class="fl">1e-3</span><span class="op">;</span></span><span id="cb1-3"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a><span class="va">lamda_s</span> <span class="op">=</span> <span class="fl">2</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">;</span></span><span id="cb1-4"><a href="#cb1-4" aria-hidden="true" tabindex="-1"></a><span class="va">lamda_i</span> <span class="op">=</span> <span class="fl">2</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">;</span></span><span id="cb1-5"><a href="#cb1-5" aria-hidden="true" tabindex="-1"></a><span class="va">no_2w_squ</span> <span class="op">=</span> <span class="fl">2.259276</span> <span class="op">+</span> <span class="fl">0.78056</span><span class="op">/</span>(<span class="fl">77.26408</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.032513</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">*</span><span class="va">lamda_p</span>)<span class="op">/</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb1-6"><a href="#cb1-6" aria-hidden="true" tabindex="-1"></a><span class="va">no_w_squ</span> <span class="op">=</span> <span class="fl">2.259276</span> <span class="op">+</span> <span class="fl">0.78056</span><span class="op">/</span>(<span class="fl">77.26408</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.032513</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">*</span><span class="va">lamda_i</span>)<span class="op">/</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb1-7"><a href="#cb1-7" aria-hidden="true" tabindex="-1"></a><span class="va">ne_2w_squ</span> <span class="op">=</span> <span class="fl">2.132668</span> <span class="op">+</span> <span class="fl">0.703319</span><span class="op">/</span>(<span class="fl">81.42631</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.00807</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">*</span><span class="va">lamda_p</span>)<span class="op">/</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb1-8"><a href="#cb1-8" aria-hidden="true" tabindex="-1"></a><span class="va">ne_w_squ</span> <span class="op">=</span> <span class="fl">2.132668</span> <span class="op">+</span> <span class="fl">0.703319</span><span class="op">/</span>(<span class="fl">81.42631</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.00807</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">*</span><span class="va">lamda_i</span>)<span class="op">/</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb1-9"><a href="#cb1-9" aria-hidden="true" tabindex="-1"></a><span class="va">inside</span> <span class="op">=</span> (<span class="va">ne_2w_squ</span><span class="op">./</span><span class="va">no_w_squ</span> )<span class="op">*</span>(<span class="va">no_2w_squ</span> <span class="op">-</span> <span class="va">no_w_squ</span> )<span class="op">/</span>(<span class="va">no_2w_squ</span> <span class="op">-</span> <span class="va">ne_2w_squ</span> )<span class="op">;</span></span><span id="cb1-10"><a href="#cb1-10" aria-hidden="true" tabindex="-1"></a><span class="va">theta</span> <span class="op">=</span> <span class="va">asin</span>(<span class="va">sqrt</span>(<span class="va">inside</span>))<span class="op">*</span><span class="fl">180</span><span class="op">/</span><span class="va">pi</span><span class="op">;</span></span></code></pre></div><p>(2)</p><p>很合理的,把第一问由特殊到一般推广一下。从300 nm到500 nm取一些波长,再把公式改写成矩阵乘法的形式,做图即可</p><div class="sourceCode" id="cb2"><pre class="sourceCode matlab"><code class="sourceCode matlab"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="va">lamda</span> <span class="op">=</span> <span class="va">linspace</span>(<span class="fl">300</span><span class="op">,</span><span class="fl">500</span><span class="op">,</span><span class="fl">301</span>)<span class="op">;</span></span><span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="va">lamda_p</span> <span class="op">=</span> <span class="va">lamda</span><span class="op">*</span><span class="fl">1e-3</span><span class="op">;</span></span><span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a><span class="va">lamda_s</span> <span class="op">=</span> <span class="fl">2</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">;</span></span><span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a><span class="va">lamda_i</span> <span class="op">=</span> <span class="fl">2</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">;</span></span><span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a><span class="va">no_2w_squ</span> <span class="op">=</span> <span class="fl">2.259276</span> <span class="op">+</span> <span class="fl">0.78056</span><span class="op">./</span>(<span class="fl">77.26408</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">.*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.032513</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">.*</span><span class="va">lamda_p</span>)<span class="op">./</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">.*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb2-6"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a><span class="va">no_w_squ</span> <span class="op">=</span> <span class="fl">2.259276</span> <span class="op">+</span> <span class="fl">0.78056</span><span class="op">./</span>(<span class="fl">77.26408</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">.*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.032513</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">.*</span><span class="va">lamda_i</span>)<span class="op">./</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">.*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb2-7"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a><span class="va">ne_2w_squ</span> <span class="op">=</span> <span class="fl">2.132668</span> <span class="op">+</span> <span class="fl">0.703319</span><span class="op">./</span>(<span class="fl">81.42631</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">.*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.00807</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">.*</span><span class="va">lamda_p</span>)<span class="op">./</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_p</span><span class="op">.*</span><span class="va">lamda_p</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb2-8"><a href="#cb2-8" aria-hidden="true" tabindex="-1"></a><span class="va">ne_w_squ</span> <span class="op">=</span> <span class="fl">2.132668</span> <span class="op">+</span> <span class="fl">0.703319</span><span class="op">./</span>(<span class="fl">81.42631</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">.*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>) <span class="op">+</span> (<span class="fl">0.00807</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">.*</span><span class="va">lamda_i</span>)<span class="op">./</span>(<span class="fl">0.0025</span><span class="op">*</span><span class="va">lamda_i</span><span class="op">.*</span><span class="va">lamda_i</span><span class="op">-</span><span class="fl">1</span>)<span class="op">;</span></span><span id="cb2-9"><a href="#cb2-9" aria-hidden="true" tabindex="-1"></a><span class="va">inside</span> <span class="op">=</span> (<span class="va">ne_2w_squ</span><span class="op">./</span><span class="va">no_w_squ</span> )<span class="op">.*</span>(<span class="va">no_2w_squ</span> <span class="op">-</span> <span class="va">no_w_squ</span> )<span class="op">./</span>(<span class="va">no_2w_squ</span> <span class="op">-</span> <span class="va">ne_2w_squ</span> )<span class="op">;</span></span><span id="cb2-10"><a href="#cb2-10" aria-hidden="true" tabindex="-1"></a><span class="va">theta</span> <span class="op">=</span> <span class="va">asin</span>(<span class="va">sqrt</span>(<span class="va">inside</span>))<span class="op">*</span><span class="fl">180</span><span class="op">/</span><span class="va">pi</span><span class="op">;</span></span><span id="cb2-11"><a href="#cb2-11" aria-hidden="true" tabindex="-1"></a><span class="va">d_theta</span> <span class="op">=</span> <span class="va">abs</span>(<span class="fl">50.5480</span> <span class="op">-</span> <span class="va">theta</span>)<span class="op">;</span></span><span id="cb2-12"><a href="#cb2-12" aria-hidden="true" tabindex="-1"></a><span class="va">plot</span>(<span class="va">lamda</span><span class="op">,</span><span class="va">d_theta</span>)<span class="op">;</span></span><span id="cb2-13"><a href="#cb2-13" aria-hidden="true" tabindex="-1"></a><span class="va">xlabel</span>(<span class="st">"lamda"</span>)</span><span id="cb2-14"><a href="#cb2-14" aria-hidden="true" tabindex="-1"></a><span class="va">ylabel</span>(<span class="st">"角度变化"</span>)</span></code></pre></div><p>做图的结果</p><figure><img src="https://i.loli.net/2021/11/21/qezojmp3tYcgEf4.jpg" alt="程序结果.jpg" /><figcaption aria-hidden="true">程序结果.jpg</figcaption></figure><p>由图观察波长范围大致在306 nm 到 443 nm,因此可以有λs和λi的调谐范围是612 ~ 886 nm</p>]]></content>
<categories>
<category> 光通信 </category>
</categories>
<tags>
<tag> 非线性光学 </tag>
</tags>
</entry>
<entry>
<title>朝花夕拾,看看10年前的计网核心期刊在说啥</title>
<link href="/2021/11/03/%E6%9C%9D%E8%8A%B1%E5%A4%95%E6%8B%BE%EF%BC%8C%E7%9C%8B%E7%9C%8B10%E5%B9%B4%E5%89%8D%E7%9A%84%E8%AE%A1%E7%BD%91%E6%A0%B8%E5%BF%83%E6%9C%9F%E5%88%8A%E5%9C%A8%E8%AF%B4%E5%95%A5/"/>
<url>/2021/11/03/%E6%9C%9D%E8%8A%B1%E5%A4%95%E6%8B%BE%EF%BC%8C%E7%9C%8B%E7%9C%8B10%E5%B9%B4%E5%89%8D%E7%9A%84%E8%AE%A1%E7%BD%91%E6%A0%B8%E5%BF%83%E6%9C%9F%E5%88%8A%E5%9C%A8%E8%AF%B4%E5%95%A5/</url>
<content type="html"><![CDATA[<p>疫情封校,甚是无聊,于是在图书馆考古,偶然发现了十年前期刊的存档,感觉很有意思就分享下~</p><p>[封面]<img src="https://i.loli.net/2021/11/03/BrR5QIU8tx2KEZo.jpg" alt="image.png" /></p><p>嗯,平平无奇的绿色,一体机的广告</p><figure><img src="https://i.loli.net/2021/11/03/5mwfB3HQvtihZIM.jpg" alt="封面背面" /><figcaption aria-hidden="true">封面背面</figcaption></figure><p>什么,居然是中文核心期刊,那得打起精神了!</p><p><img src="https://i.loli.net/2021/11/03/Hn56ZjMBDoNqegi.jpg" alt="卷首语" /> 嗯,正是乔帮主开始引领起互联网潮流的年代</p><figure><img src="https://i.loli.net/2021/11/03/by2wEPksvqKj8Xx.jpg" alt="win8" /><figcaption aria-hidden="true">win8</figcaption></figure><p>Windows8哈哈哈哈哈哈,文章说的好有道理,那么请问,你用了吗!</p><p><img src="https://i.loli.net/2021/11/03/1Nc7eWOuYKlxoC2.jpg" alt="Gmail" /> 404网站</p><figure><img src="https://i.loli.net/2021/11/03/YDU7djB5iJOXo6C.jpg" alt="蓝屏" /><figcaption aria-hidden="true">蓝屏</figcaption></figure><p>“1.重启” 嗯,这很合理!果然重启是10年前大家就公认的良方</p><figure><img src="https://i.loli.net/2021/11/03/xPsWuDMIlKkbwHB.jpg" alt="瑞星" /><figcaption aria-hidden="true">瑞星</figcaption></figure><p>嗯?苹果,安全软件?有必要吗,大概是安全厂商的思维惯性吧</p><figure><img src="https://i.loli.net/2021/11/03/XIonwe8m4dDG3Ks.jpg" alt="UML" /><figcaption aria-hidden="true">UML</figcaption></figure><p>是的,这篇文章在讲UML(统一建模语言)的军事用途。</p><figure><img src="https://i.loli.net/2021/11/03/ps6BuX31oHENQYC.jpg" alt="UML2" /><figcaption aria-hidden="true">UML2</figcaption></figure><p>相当有板有眼,大概那个年代类图对于军队还很新鲜吧,不知道装备了类图的我军战斗力也没有提高(总之Java战斗力这十年确实很高)</p><p><img src="https://i.loli.net/2021/11/03/hbReyX8E5cd1mGL.jpg" alt="excel" /> 我。。。这是中文核心期刊?一篇office软件的使用技巧也可以发吗。好家伙还装模做样的有摘要abstract。觉得自己论文水不好意思的同学,请想一想有人在10年前把一篇办公软件的使用技巧写了篇论文甚至还带英文摘要发在了期刊上!</p><p><img src="https://i.loli.net/2021/11/03/fx3sIY6qSmNH2hB.jpg" alt="迅雷7" /> 哈哈哈哈哈哈,时代的眼泪了,当然盗版横行的年代</p><p>最后,附上一张图书馆996的图片祝大家永不996! <img src="https://i.loli.net/2021/11/03/yEg4wD2PaH9bCmp.jpg" alt="996" /> 不要问我负的人数怎么回事,我也不知道!</p>]]></content>
<categories>
<category> 技术闲聊 </category>
</categories>
<tags>
<tag> 技术闲聊 </tag>
<tag> 北邮人论坛 </tag>
<tag> 整活 </tag>
</tags>
</entry>
<entry>
<title>我的hexo建站过程~ (附上没有百度到,自己解决的两个小问题)</title>
<link href="/2021/10/22/%E6%88%91%E7%9A%84hexo%E5%BB%BA%E7%AB%99%E8%BF%87%E7%A8%8B-%EF%BC%88%E9%99%84%E4%B8%8A%E6%B2%A1%E6%9C%89%E7%99%BE%E5%BA%A6%E5%88%B0%EF%BC%8C%E8%87%AA%E5%B7%B1%E8%A7%A3%E5%86%B3%E7%9A%84%E4%B8%A4%E4%B8%AA%E5%B0%8F%E9%97%AE%E9%A2%98%EF%BC%89/"/>
<url>/2021/10/22/%E6%88%91%E7%9A%84hexo%E5%BB%BA%E7%AB%99%E8%BF%87%E7%A8%8B-%EF%BC%88%E9%99%84%E4%B8%8A%E6%B2%A1%E6%9C%89%E7%99%BE%E5%BA%A6%E5%88%B0%EF%BC%8C%E8%87%AA%E5%B7%B1%E8%A7%A3%E5%86%B3%E7%9A%84%E4%B8%A4%E4%B8%AA%E5%B0%8F%E9%97%AE%E9%A2%98%EF%BC%89/</url>
<content type="html"><![CDATA[<p>闲着没有事做,又想写一点自己的水东西,因此也东施效颦,学着大佬们自己建一个blog玩一下~</p><p>(为什么用hexo呢,因为我看大佬们都用这个,所以我就看了一下教程加入了)</p><p>主要参考了这篇简书上的<a href="https://www.jianshu.com/p/390f202c5b0e">文章"5分钟搞定个人博客-hexo"</a></p><h1 id="新建github仓库本地项目">1. 新建GitHub仓库,本地项目</h1><ol type="1"><li>GitHub上新建一个名为 <strong><em><user-name>.github.io</em></strong> 的仓库,这样命名的仓库是一个特殊的仓库,详见github.io</li><li>本地用npm安装hexo</li></ol><p><code>npm install -g hexo</code></p><ol start="3" type="1"><li>初始化项目,简单来说就是运行这个命令:</li></ol><pre><code>hexo init</code></pre><p>本地看看</p><p><code>hexo s</code></p><p>然后本地浏览器访问 localhost:4000</p><h1 id="执行命令提交看看效果">2. 执行命令,提交看看效果</h1><p>先创建一篇新文章:</p><p><code>hexo new "随便什么好听的名字"</code></p><p>然后修改<strong>项目的</strong>的配置文件(_congif.yml)</p><div class="sourceCode" id="cb2"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">deploy:</span></span><span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a> <span class="ex">type:</span> git</span><span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a> <span class="ex">repo:</span> <span class="op"><</span>你的仓库地址<span class="op">></span> </span><span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a> <span class="ex">branch:</span> master</span></code></pre></div><p>用npm安装推送仓库的工具</p><div class="sourceCode" id="cb3"><pre class="sourceCode javascript"><code class="sourceCode javascript"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a>npm install hexo<span class="op">-</span>deployer<span class="op">-</span>git <span class="op">--</span>save</span></code></pre></div><p>执行下列命令推送到刚刚配置的仓库</p><pre><code>hexo clean//清除一下原来的各种中间文件(吧hexo g//生成hexo d提交到仓库</code></pre><p>浏览器访问<strong><em><user-name>.github.io</em></strong> ,看一看你的blog吧</p><h1 id="换一个好看的主题">3.换一个好看的主题</h1><p>官网的<a href="https://hexo.io/zh-cn/docs/themes">这里</a>有很多好看的主题的预览。(我甚至还看到了某个很著名的galgame网站的主题),选择一个喜欢的</p><p>然后在项目目录下 git clone 一下项目</p><p>然后在项目的目录配置(_congif.yml)下修改theme:</p><div class="sourceCode" id="cb5"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="ex">theme:</span> <span class="op"><</span>主题的名字<span class="op">></span></span></code></pre></div><h1 id="自己解决的两个小问题">自己解决的两个小问题</h1><h2 id="hexo-deploy时遇到的问题">1.<code>hexo deploy</code>时遇到的问题:</h2><p><code>fatal: unable to access 'https://github.com/wjsvec/wjsvec.github.io/': OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054</code> <code>FATAL {</code> <code>err: Error: Spawn failed</code> <code>at ChildProcess.<anonymous> (C:\blog\hexo\node_modules\hexo-util\lib\spawn.js:51:21)</code> <code>at ChildProcess.emit (events.js:376:20)</code> <code>at ChildProcess.cp.emit (C:\blog\hexo\node_modules\cross-spawn\lib\enoent.js:34:29)</code> <code>at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12) {</code> <code>code: 128</code> <code>}</code> `} Something's wrong. Maybe you can find the solution here: %s https://hexo.io/docs/troubleshooting.html``</p><p>百度了一下说是需要把科学上网软件关一下,然后问题变成了这样:</p><p><code>fatal: unable to access 'https://github.com/wjsvec/wjsvec.github.io/': Failed to connect to github.com port 443: Timed out</code> <code>FATAL {</code> <code>err: Error: Spawn failed</code> <code>at ChildProcess.<anonymous> (C:\blog\hexo\node_modules\hexo-util\lib\spawn.js:51:21)</code> <code>at ChildProcess.emit (events.js:376:20)</code> <code>at ChildProcess.cp.emit (C:\blog\hexo\node_modules\cross-spawn\lib\enoent.js:34:29)</code> <code>at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12) {</code> <code>code: 128</code> <code>}</code> <code>} Something's wrong. Maybe you can find the solution here: %s https://hexo.io/docs/troubleshooting.html</code></p><p>废话么,不翻墙怎么上GitHub,必然超时啊</p><p>我的解决,笨办法,去<a href="https://websites.ipaddress.com/www.github.com">IP查询网站</a>找到GitHub现在的IP地址,然后改一下电脑的HOST文件,这样就不用科学上网了,能保证国内的网络也可以ping通GitHub了(当然访问网页版GitHub还是不行。。。。</p><p>可能一次比较慢,需要改一下HOST文件,不过考虑到我这样的老摸鱼好像一个星期就写一篇新的就不错了。。。好像也不是很麻烦?(大概吧</p><h2 id="主题配置时遇到的小问题">2. 主题配置时遇到的小问题</h2><p>我一般喜欢用latex写一点公式,但是hexo不支持,主题安装时提到了需要</p><pre><code># 数学公式npm install hexo-renderer-mathjax --save</code></pre><p>试了一下并不可以正常显示数学公式,于是去看了一下demo网站的代码(package.json),好像不是推荐的数学库啊,那就重装一下,换成<a href="https://github.com/Haojen/Claudia-theme-blog">demo网站</a>的那个库就好了~</p><p><code>npm install hexo-math</code></p>]]></content>
<categories>
<category> 编程开发 </category>
</categories>
<tags>
<tag> 编程开发 </tag>
<tag> 前端 </tag>
</tags>
</entry>
<entry>
<title>《非线性光学》第一章课后习题参考</title>
<link href="/2021/10/13/%E3%80%8A%E9%9D%9E%E7%BA%BF%E6%80%A7%E5%85%89%E5%AD%A6%E3%80%8B%E7%AC%AC%E4%B8%80%E7%AB%A0%E8%AF%BE%E5%90%8E%E4%B9%A0%E9%A2%98%E5%8F%82%E8%80%83/"/>
<url>/2021/10/13/%E3%80%8A%E9%9D%9E%E7%BA%BF%E6%80%A7%E5%85%89%E5%AD%A6%E3%80%8B%E7%AC%AC%E4%B8%80%E7%AB%A0%E8%AF%BE%E5%90%8E%E4%B9%A0%E9%A2%98%E5%8F%82%E8%80%83/</url>
<content type="html"><![CDATA[<h1 id="非线性光学第一章课后习题参考">《非线性光学》第一章课后习题参考</h1><p>这学期开始就是研究生了,说实话算上从疫情开始就没有怎么好好上过线下课了(大四上在忙考研,大四下毕设没啥课了),还真的有些不适应哈哈哈。</p><p>这学期比较有挑战的课感觉就是实验室导师张晓光老师讲的非线性光学了,用的书是北邮新出的《非线性光学》。</p><figure><img src="https://i.loli.net/2021/10/14/Ryep63JoarE9KZg.jpg" alt="1版1刷.jpg" /><figcaption aria-hidden="true">1版1刷.jpg</figcaption></figure><p>第一次出版,第一次印刷,还是主编亲自讲,当然必须要找编者签个名啦·</p><figure><img src="https://i.loli.net/2021/10/14/ruycjDfTnSN1OFE.jpg" alt="编者签名.jpg" /><figcaption aria-hidden="true">编者签名.jpg</figcaption></figure><p>既然是新书,那咱这次就来吃一下螃蟹吧,把自己瞎写的答案发出来讨论一下。感谢某J姓大佬在咱完成作业时的帮助!也感谢老张上课给我们的付出~</p><p>注:只是写出来分享做学术交流用(我是菜鸡,J同学是真大佬),有错误可以通过邮箱(vector7#bupt.edu.cn)联系我 (请把#替换为@)</p><p>(本来想用latex好好写一下的,发现公式太繁琐了自动识别不好用,就直接拍了)</p><h2 id="section">1.1</h2><p>没有什么好说的,纯考验基本功的一道题</p><figure><img src="https://i.loli.net/2021/10/16/PXj6MFf25ehtoiz.png" alt="A1.png" /><figcaption aria-hidden="true">A1.png</figcaption></figure><h2 id="section-1">1.2</h2><p>菲涅尔方程的另一种形式的应用,证明双折射的两个偏振态<strong>D</strong>是相互垂直的,需要晶体光学第一基本方程和物质方程联立求解。</p><figure><img src="https://i.loli.net/2021/10/16/GKuLIPSn1YwBgzD.png" alt="A2.png" /><figcaption aria-hidden="true">A2.png</figcaption></figure><h2 id="section-2">1.3</h2><p>课本P14开始的 <strong>晶体中光传输的特征方程</strong>的另一种。证明相当巧妙,要不是上课讲了一遍根本想不到啊。这个可比书上本来的那个行列式证法健康多了(相信我,那个会算到吐血的)</p><figure><img src="https://i.loli.net/2021/10/16/3wN9hyls8G2Z6bg.png" alt="A3.png" /><figcaption aria-hidden="true">A3.png</figcaption></figure><h2 id="section-3">1.4</h2><h3 id="section-4">(1)</h3><p>画个图这道题会容易一些~</p><p>关键在于<strong>s</strong>的方向是由 <strong>E</strong>和 <strong>H</strong>决定的,而 <strong>k</strong> 的方向是由 <strong>D</strong> 和 <strong>H</strong> 决定的(可以看到 <strong>H</strong>是一样的,夹角的产生是由于 <strong>D</strong> 和 <strong>E</strong>)。在单轴晶体中,由晶体光学第一基本方程 ,在折射率椭球中有</p><p>剩下的就是折腾数学了,什么两角和差tan啊,倍角公式啊(反正我是不喜欢)</p><figure><img src="https://i.loli.net/2021/10/16/Vgozdfap13beLnc.png" alt="A4-1.png" /><figcaption aria-hidden="true">A4-1.png</figcaption></figure><h3 id="section-5">(2)</h3><p>公式的实际应用,由正负单轴晶体no和ne的关系一眼就看出来了</p><figure><img src="https://i.loli.net/2021/10/16/D7K6yPgkmUNQ8TZ.png" alt="A4-2.png" /><figcaption aria-hidden="true">A4-2.png</figcaption></figure><h3 id="section-6">(3)</h3><h4 id="a.">a.</h4><p>又是恶心人的证明,函数法好想但是不好算(反正我是不想求这个导数),三角法好算但是不好想(对勾函数还是柯西不等式啥的)。</p><figure><img src="https://i.loli.net/2021/10/16/qu4iSAc5xNTvzXo.png" alt="A4-3-1.png" /><figcaption aria-hidden="true">A4-3-1.png</figcaption></figure><h4 id="b.">b.</h4><p>计算题就很开心了对吧,有数字就不那么抽象了,给一个正晶体一个负晶体算一下</p><h4 id="c.-三角证法有点不好想">c. 三角证法(有点不好想)</h4><p>反正我是看了吉子哥的答案才会了的,呜呜呜,我的吉子哥</p><figure><img src="https://i.loli.net/2021/10/16/a9hHQtIrxTo67gP.png" alt="A4-3-2.png" /><figcaption aria-hidden="true">A4-3-2.png</figcaption></figure><h2 id="section-7">1.5</h2><p>抄的PPT,直爽~</p><figure><img src="https://i.loli.net/2021/10/16/135uEY8T7hzCiMr.png" alt="A5.png" /><figcaption aria-hidden="true">A5.png</figcaption></figure><h2 id="section-8">1.6</h2><p>模仿着书上KDP晶体的分析来就行,注意矩阵不完全一样,方程经常改改别被阴了。。。</p><figure><img src="https://i.loli.net/2021/10/16/Wn4HrmFp5R2vBC1.png" alt="A6.png" /><figcaption aria-hidden="true">A6.png</figcaption></figure><h2 id="section-9">1.7</h2><p>好家伙,张老师自己的1996年的paper出了一道题,文章在<a href="https://kns.cnki.net/kcms/detail/detail.aspx?dbcode=CJFD&dbname=CJFD9697&filename=DXWL603.002&uniplatform=NZKPT&v=YY7y5FpjEBRhwkL4fwAEE1gDmxpXGQyiwnvvlooJxLsE2EYW2bCdmDNjSfVRL%25mmd2BBN">这里</a>,图片版的为了不影响阅读咱放在最下面了</p><p>PS:看文献前我在想咋这么难,现在就觉得好菜啊hhh</p><h3 id="section-10">(1)</h3><p>看完paper就懂了</p><figure><img src="https://i.loli.net/2021/10/16/5kJevKcosChpQSx.png" alt="A7-1.png" /><figcaption aria-hidden="true">A7-1.png</figcaption></figure><h3 id="section-11">(2)</h3><p>看完paper就懂了</p><figure><img src="https://i.loli.net/2021/10/16/Hghb97j8ECosvOG.png" alt="A7-2.png" /><figcaption aria-hidden="true">A7-2.png</figcaption></figure><h3 id="section-12">(3)</h3><p>看完paper就懂了</p><figure><img src="https://i.loli.net/2021/10/16/pOl4v2UrMatq5xL.png" alt="A7-3-1.png" /><figcaption aria-hidden="true">A7-3-1.png</figcaption></figure><p>图不好画,用一下paper原图吧~</p><figure><img src="https://i.loli.net/2021/10/16/fzMad9n6ZQlWEXg.png" alt="A7-3-2.png" /><figcaption aria-hidden="true">A7-3-2.png</figcaption></figure><h2 id="感谢">感谢</h2><p>感谢J大佬在本菜鸡完成作业的帮助,也感谢张老师精彩的教学~</p><p>附:关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光</p><figure><img src="https://i.loli.net/2021/10/16/L9QlGp6Wj8ksF3U.png" alt="关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_1.png" /><figcaption aria-hidden="true">关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_1.png</figcaption></figure><figure><img src="https://i.loli.net/2021/10/16/9ru2x1c6avIL5T3.png" alt="关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_2.png" /><figcaption aria-hidden="true">关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_2.png</figcaption></figure><figure><img src="https://i.loli.net/2021/10/16/jJiPMsQVpEIvbRN.png" alt="关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_3.png" /><figcaption aria-hidden="true">关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_3.png</figcaption></figure><figure><img src="https://i.loli.net/2021/10/16/JIZcX5tA17Wa9Sm.png" alt="关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_4.png" /><figcaption aria-hidden="true">关于KDP晶体在电光效应中两个二阶轴对称性的讨论_张晓光_页面_4.png</figcaption></figure>]]></content>
<categories>
<category> 光通信 </category>
</categories>
<tags>
<tag> 非线性光学 </tag>
</tags>
</entry>
<entry>
<title>拥抱开源,听技术&开源讲座的一点感想</title>
<link href="/2021/10/11/%E6%8B%A5%E6%8A%B1%E5%BC%80%E6%BA%90%EF%BC%8C%E5%90%AC%E6%8A%80%E6%9C%AF-%E5%BC%80%E6%BA%90%E8%AE%B2%E5%BA%A7%E7%9A%84%E4%B8%80%E7%82%B9%E6%84%9F%E6%83%B3/"/>
<url>/2021/10/11/%E6%8B%A5%E6%8A%B1%E5%BC%80%E6%BA%90%EF%BC%8C%E5%90%AC%E6%8A%80%E6%9C%AF-%E5%BC%80%E6%BA%90%E8%AE%B2%E5%BA%A7%E7%9A%84%E4%B8%80%E7%82%B9%E6%84%9F%E6%83%B3/</url>
<content type="html"><![CDATA[<h1 id="拥抱开源听技术开源讲座的一点感想">拥抱开源,听“技术&开源”讲座的一点感想</h1><p>昨天去听了一下一个在教三开的一个关于开源的讲座,收获颇多,分享一下~</p><p>讲座的大佬是涛思数据的CEO,一家数据库相关的独角兽公司。在Github上开源的<a href="https://github.com/taosdata/TDengine">TDengine</a>现在已经有16000+star了,而且陶总是还在写代码的CEO(上面的项目里<a href="https://github.com/taosdata/TDengine/commits?author=jtao1735">370 commits</a>,几万行代码了,68年的人这个精力真是好 ),很多观点真的很新颖也很贴近学生的切实利益,也就是找工作相关,因此在这里写点感想分享一下~</p><h3 id="学生参与开源项目的好处">学生参与开源项目的好处</h3><p>其实这个是讲座最后的部分了,不过北邮人都是务实的,我也不说虚的了。开门见山先讲这个。作为一个每天在悄悄话冲浪的闲人,很多学生常常抱怨“导师思想保守不肯放实习”“实习单位学不到技术就是拧螺丝”“实习项目没啥技术高手真想跑路”。其实呢,参与开源项目就是一个绝佳的项目经历。“导师不放实习?”开源项目就是线上参与,真.有台电脑就能干;“项目拧螺丝坑人?”开源项目众多,总能找到与自己技术力匹配的项目;“实习项目没啥技术大佬”敢把自己项目开源给大伙看的人,想必技术也不能太丢人吧。如果真的是困扰找实习的同学,开源项目真的是一个不错的项目经历的来源。<a href="https://bbs.byr.cn/#!article/StudyShare/202149">在校生怎么增加项目经验?</a>这篇帖子里面说的很详细,我也是看了这篇帖子才对开源感兴趣去听这个讲座的。</p><p>陶总也提到一个他们公司的小故事:一个天大的本科生(还是妹子)做毕设时用到了他们的项目,但是项目里缺少可视化工具,于是她就自己写了一个开源了出来。陶总觉得很不错,正值毕业就打了一个电话过去,然后就算一面二面终面了,打完电话就算是发了offer了。</p><p>硬要说开源项目的缺点,大概就是(几乎)没有实习工资</p><h3 id="学生怎么参与开源项目">学生怎么参与开源项目</h3><p>嗯,陶总这里先给他们自己打了一波广告(图穷匕见了属于是)。以他们的TDengine为例,如果对数据库感兴趣,就可以尝试一下。</p><ul><li>首先要成为用户,熟悉文档,把项目跑起来</li></ul><p>(嘟囔一句,TDengine可比React难跑太多了)</p><ul><li>关注issue,看到感兴趣的问题可以加入讨论</li><li>很多项目都有便于新手上手的good-first_issue,这是很好的起点</li></ul><p><a href="https://github.com/facebook/react/labels/good%20first%20issue">React的good-first_issue</a> (我目前的技术栈),<a href="https://github.com/taosdata/TDengine/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22">TDengine的good_first_issue</a> (陶总卖的安利)</p><ul><li>在使用过程中发现的问题,都是参与进来的好机会</li><li>有一定的经验之后,可以参与一些重要功能的讨论和实现</li></ul><h3 id="什么样的项目应该开源">什么样的项目应该开源</h3><p>借用PPT中的话,一句话来说,就是“用户量大的产品”。所以一些应用场景小的,或者实验室用来吃饭的代码,可千万不要给随手开源了。</p><p>像是数据库或者操作系统这样的东西,全世界都用的差不多,无论人种信仰意识形态,那么就十分适合开源出来。</p><p>我的小私货是:不是利益关系不能开源的开源一下都挺好。就算是大作业的屎山代码,开源出来让大家笑话笑话都是免费的code review对吧(</p><h3 id="项目开源对企业的好处">项目开源对企业的好处</h3><p>可能有人会说,你个学生做技术的,讲技术就完事了,关心这个干嘛。不过我还是想要说一下,很多人经常遗憾北邮没有出过大企业家(雷军之于武大,李彦宏之于北大)。罗马不是一天建成的,万一在看我的帖子里就会有未来的大企业家呢,对吧~</p><p>首先,也是我在讲座中觉得最新颖的观点:开源是中国软件走向全球的最好途径。为什么前不久华为要在Github上鸿蒙的镜像代码,因为技术是没有国界的,这是突破现在政治上对抗最有效的手段(当然我不认为华为是一家具有开源精神的公司)。大佬也讲了,他们的软件是管理数据的,要让外国佬也觉得企业可以用的放心,那么不开源出去,在当今的政治格局下,面对的阻力太多了。其次,开源的软件更受用户欢迎,更可能成为标准的制定者。比如不开源的Matlab,无疑现在就被很多用户“不喜欢”了。如果有一个可以完全取代Matlab的一套开源代码,我们无疑不会再选择Matlab了,开源代码毕竟不能随便“卡脖子”(大部分开源协议来讲)。这样的竞争力已经足够巨大来改变市场格局了。最后,开源能狙击竞争对手。上面提到了,开源的产品更受消费者欢迎。竞争对手被迫开源还是接受这种优势无疑都是很难受的。一开始就准备拥抱开源和被迫开源的项目所达成的效果可能是完全不同的。</p><h4 id="最后发两句牢骚吧">最后发两句牢骚吧:</h4><p>陶老师这个讲座讲的真是不错,不过现场听的人真的很少,可能没有德育分吧。我在悄悄话经常看到大家说希望一些业界大佬来讲一些干货,结果Github上16000+star项目的CEO的讲座才十几个人听我真的很意外(自己说他现在的独角兽公司已经7000万刀融资了,我没有查证,不过这个16000star是真真的)。而且陶总真的很热情,PPT最后还放了自己的微信和Github(PPT我放在<a href="https://pan.baidu.com/s/1z6Txc7QnIHXC4svUmEbQlA">云盘</a>了,提取码:h7cw,感兴趣的同学可以看一下~)</p><p>讲座开完也跟大佬聊了两句,他很失落的说在清华那边给讲的时候人坐的很满,还有很多姚班的学生。我说可能是在学校没有宣传开吧(问了一下就贴了两张海报,一张科研楼一张教三,论坛发了个<a href="https://bbs.byr.cn/#!article/Talking/6303955">帖子</a>还在谈天板块没上十大)。我就说了一下我数据库很菜(技术栈主要是前端React),代码帮不上忙,不过可以到论坛帮忙宣传一下,我相信北邮人还是很多人认同开源精神,也想要参与开源项目的。这样的讲座北邮人应该会很喜欢,只是没有宣传出去。留了一下CEO的微信看了一眼朋友圈,前几次这样的分享分别在清华、北大、信通院的开源大会。大概这次来北邮也是认可北邮,希望可以借机会网罗人才吧。</p><p>这个帖子专门挑了晚上发,希望可以上个十大吧。我真的觉得学校这个讲座的制度真的有问题,一群所谓“大佬”侃侃而谈全是套话,底下的学生为了德育分座无虚席的玩手机;16000+star的一线程序员CEO开个讲座冷冷清清,想要互动都没有人的。</p><p>好了,写完了更新一下:</p><p>(来着大佬的朋友圈)陶总又去人大讲了,看起来也比北邮热闹许多(在北邮人太少了都没发朋友圈呜呜呜)</p><figure><img src="https://i.loli.net/2021/10/10/OwJykuq7Q2hen3i.jpg" alt="pyq.jpg" /><figcaption aria-hidden="true">pyq.jpg</figcaption></figure><p>原帖发于北邮人论坛,<a href="https://bbs.byr.cn/#!article/StudyShare/202240">链接点这里</a>~,收获了100多个赞,开心</p><!-- <mjx-container class="MathJax" jax="SVG"><svg style="vertical-align: -1.68ex" xmlns="http://www.w3.org/2000/svg" width="32.966ex" height="4.436ex" role="img" focusable="false" viewBox="0 -1218.1 14571.1 1960.5" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path id="MJX-1-TEX-N-24" d="M162 187Q162 164 146 149T109 133H103V130Q108 115 115 105Q122 92 131 82T150 64T170 52T190 44T206 40T220 37L227 36V313Q190 320 162 335Q116 358 86 404T55 508Q55 567 85 614T165 685Q186 696 225 704H227V750H273V704L286 703Q369 690 413 631Q441 588 444 531Q444 514 443 509Q439 490 425 479T391 468Q368 468 353 483T337 522Q337 546 353 560T390 575L394 576V578Q386 599 372 614T342 637T314 649T288 656L273 658V408L288 405Q329 394 355 376Q396 348 420 300T444 199Q444 130 408 76T313 1Q286 -9 276 -9H273V-56H227V-10H221Q202 -6 193 -4T155 11T108 41T74 94T55 176V182Q55 227 95 238Q103 240 108 240Q129 240 145 226T162 187ZM225 657Q219 657 204 651T169 632T135 594T121 538Q121 512 131 491T156 457T187 435T213 423T227 420V539Q227 657 225 657ZM378 169Q378 230 339 265T274 301Q273 301 273 169V37Q324 50 351 87T378 169Z"></path><path id="MJX-1-TEX-I-1D6FE" d="M31 249Q11 249 11 258Q11 275 26 304T66 365T129 418T206 441Q233 441 239 440Q287 429 318 386T371 255Q385 195 385 170Q385 166 386 166L398 193Q418 244 443 300T486 391T508 430Q510 431 524 431H537Q543 425 543 422Q543 418 522 378T463 251T391 71Q385 55 378 6T357 -100Q341 -165 330 -190T303 -216Q286 -216 286 -188Q286 -138 340 32L346 51L347 69Q348 79 348 100Q348 257 291 317Q251 355 196 355Q148 355 108 329T51 260Q49 251 47 251Q45 249 31 249Z"></path><path id="MJX-1-TEX-N-3D" d="M56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153Z"></path><path id="MJX-1-TEX-N-31" d="M213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578Z"></path><path id="MJX-1-TEX-I-1D45B" d="M21 287Q22 293 24 303T36 341T56 388T89 425T135 442Q171 442 195 424T225 390T231 369Q231 367 232 367L243 378Q304 442 382 442Q436 442 469 415T503 336T465 179T427 52Q427 26 444 26Q450 26 453 27Q482 32 505 65T540 145Q542 153 560 153Q580 153 580 145Q580 144 576 130Q568 101 554 73T508 17T439 -10Q392 -10 371 17T350 73Q350 92 386 193T423 345Q423 404 379 404H374Q288 404 229 303L222 291L189 157Q156 26 151 16Q138 -11 108 -11Q95 -11 87 -5T76 7T74 17Q74 30 112 180T152 343Q153 348 153 366Q153 405 129 405Q91 405 66 305Q60 285 60 284Q58 278 41 278H27Q21 284 21 287Z"></path><path id="MJX-1-TEX-I-1D457" d="M297 596Q297 627 318 644T361 661Q378 661 389 651T403 623Q403 595 384 576T340 557Q322 557 310 567T297 596ZM288 376Q288 405 262 405Q240 405 220 393T185 362T161 325T144 293L137 279Q135 278 121 278H107Q101 284 101 286T105 299Q126 348 164 391T252 441Q253 441 260 441T272 442Q296 441 316 432Q341 418 354 401T367 348V332L318 133Q267 -67 264 -75Q246 -125 194 -164T75 -204Q25 -204 7 -183T-12 -137Q-12 -110 7 -91T53 -71Q70 -71 82 -81T95 -112Q95 -148 63 -167Q69 -168 77 -168Q111 -168 139 -140T182 -74L193 -32Q204 11 219 72T251 197T278 308T289 365Q289 372 288 376Z"></path><path id="MJX-1-TEX-I-1D45A" d="M21 287Q22 293 24 303T36 341T56 388T88 425T132 442T175 435T205 417T221 395T229 376L231 369Q231 367 232 367L243 378Q303 442 384 442Q401 442 415 440T441 433T460 423T475 411T485 398T493 385T497 373T500 364T502 357L510 367Q573 442 659 442Q713 442 746 415T780 336Q780 285 742 178T704 50Q705 36 709 31T724 26Q752 26 776 56T815 138Q818 149 821 151T837 153Q857 153 857 145Q857 144 853 130Q845 101 831 73T785 17T716 -10Q669 -10 648 17T627 73Q627 92 663 193T700 345Q700 404 656 404H651Q565 404 506 303L499 291L466 157Q433 26 428 16Q415 -11 385 -11Q372 -11 364 -4T353 8T350 18Q350 29 384 161L420 307Q423 322 423 345Q423 404 379 404H374Q288 404 229 303L222 291L189 157Q156 26 151 16Q138 -11 108 -11Q95 -11 87 -5T76 7T74 17Q74 30 112 181Q151 335 151 342Q154 357 154 369Q154 405 129 405Q107 405 92 377T69 316T57 280Q55 278 41 278H27Q21 284 21 287Z"></path><path id="MJX-1-TEX-SO-2211" d="M61 748Q64 750 489 750H913L954 640Q965 609 976 579T993 533T999 516H979L959 517Q936 579 886 621T777 682Q724 700 655 705T436 710H319Q183 710 183 709Q186 706 348 484T511 259Q517 250 513 244L490 216Q466 188 420 134T330 27L149 -187Q149 -188 362 -188Q388 -188 436 -188T506 -189Q679 -189 778 -162T936 -43Q946 -27 959 6H999L913 -249L489 -250Q65 -250 62 -248Q56 -246 56 -239Q56 -234 118 -161Q186 -81 245 -11L428 206Q428 207 242 462L57 717L56 728Q56 744 61 748Z"></path><path id="MJX-1-TEX-I-1D465" d="M52 289Q59 331 106 386T222 442Q257 442 286 424T329 379Q371 442 430 442Q467 442 494 420T522 361Q522 332 508 314T481 292T458 288Q439 288 427 299T415 328Q415 374 465 391Q454 404 425 404Q412 404 406 402Q368 386 350 336Q290 115 290 78Q290 50 306 38T341 26Q378 26 414 59T463 140Q466 150 469 151T485 153H489Q504 153 504 145Q504 144 502 134Q486 77 440 33T333 -11Q263 -11 227 52Q186 -10 133 -10H127Q78 -10 57 16T35 71Q35 103 54 123T99 143Q142 143 142 101Q142 81 130 66T107 46T94 41L91 40Q91 39 97 36T113 29T132 26Q168 26 194 71Q203 87 217 139T245 247T261 313Q266 340 266 352Q266 380 251 392T217 404Q177 404 142 372T93 290Q91 281 88 280T72 278H58Q52 284 52 289Z"></path><path id="MJX-1-TEX-I-1D456" d="M184 600Q184 624 203 642T247 661Q265 661 277 649T290 619Q290 596 270 577T226 557Q211 557 198 567T184 600ZM21 287Q21 295 30 318T54 369T98 420T158 442Q197 442 223 419T250 357Q250 340 236 301T196 196T154 83Q149 61 149 51Q149 26 166 26Q175 26 185 29T208 43T235 78T260 137Q263 149 265 151T282 153Q302 153 302 143Q302 135 293 112T268 61T223 11T161 -11Q129 -11 102 10T74 74Q74 91 79 106T122 220Q160 321 166 341T173 380Q173 404 156 404H154Q124 404 99 371T61 287Q60 286 59 284T58 281T56 279T53 278T49 278T41 278H27Q21 284 21 287Z"></path><path id="MJX-1-TEX-N-2208" d="M84 250Q84 372 166 450T360 539Q361 539 377 539T419 540T469 540H568Q583 532 583 520Q583 511 570 501L466 500Q355 499 329 494Q280 482 242 458T183 409T147 354T129 306T124 272V270H568Q583 262 583 250T568 230H124V228Q124 207 134 177T167 112T231 48T328 7Q355 1 466 0H570Q583 -10 583 -20Q583 -32 568 -40H471Q464 -40 446 -40T417 -41Q262 -41 172 45Q84 127 84 250Z"></path><path id="MJX-1-TEX-I-1D445" d="M230 637Q203 637 198 638T193 649Q193 676 204 682Q206 683 378 683Q550 682 564 680Q620 672 658 652T712 606T733 563T739 529Q739 484 710 445T643 385T576 351T538 338L545 333Q612 295 612 223Q612 212 607 162T602 80V71Q602 53 603 43T614 25T640 16Q668 16 686 38T712 85Q717 99 720 102T735 105Q755 105 755 93Q755 75 731 36Q693 -21 641 -21H632Q571 -21 531 4T487 82Q487 109 502 166T517 239Q517 290 474 313Q459 320 449 321T378 323H309L277 193Q244 61 244 59Q244 55 245 54T252 50T269 48T302 46H333Q339 38 339 37T336 19Q332 6 326 0H311Q275 2 180 2Q146 2 117 2T71 2T50 1Q33 1 33 10Q33 12 36 24Q41 43 46 45Q50 46 61 46H67Q94 46 127 49Q141 52 146 61Q149 65 218 339T287 628Q287 635 230 637ZM630 554Q630 586 609 608T523 636Q521 636 500 636T462 637H440Q393 637 386 627Q385 624 352 494T319 361Q319 360 388 360Q466 361 492 367Q556 377 592 426Q608 449 619 486T630 554Z"></path><path id="MJX-1-TEX-N-2C" d="M78 35T78 60T94 103T137 121Q165 121 187 96T210 8Q210 -27 201 -60T180 -117T154 -158T130 -185T117 -194Q113 -194 104 -185T95 -172Q95 -168 106 -156T131 -126T157 -76T173 -3V9L172 8Q170 7 167 6T161 3T152 1T140 0Q113 0 96 17Z"></path><path id="MJX-1-TEX-I-1D466" d="M21 287Q21 301 36 335T84 406T158 442Q199 442 224 419T250 355Q248 336 247 334Q247 331 231 288T198 191T182 105Q182 62 196 45T238 27Q261 27 281 38T312 61T339 94Q339 95 344 114T358 173T377 247Q415 397 419 404Q432 431 462 431Q475 431 483 424T494 412T496 403Q496 390 447 193T391 -23Q363 -106 294 -155T156 -205Q111 -205 77 -183T43 -117Q43 -95 50 -80T69 -58T89 -48T106 -45Q150 -45 150 -87Q150 -107 138 -122T115 -142T102 -147L99 -148Q101 -153 118 -160T152 -167H160Q177 -167 186 -165Q219 -156 247 -127T290 -65T313 -9T321 21L315 17Q309 13 296 6T270 -6Q250 -11 231 -11Q185 -11 150 11T104 82Q103 89 103 113Q103 170 138 262T173 379Q173 380 173 381Q173 390 173 393T169 400T158 404H154Q131 404 112 385T82 344T65 302T57 280Q55 278 41 278H27Q21 284 21 287Z"></path><path id="MJX-1-TEX-N-2212" d="M84 237T84 250T98 270H679Q694 262 694 250T679 230H98Q84 237 84 250Z"></path><path id="MJX-1-TEX-I-1D439" d="M48 1Q31 1 31 11Q31 13 34 25Q38 41 42 43T65 46Q92 46 125 49Q139 52 144 61Q146 66 215 342T285 622Q285 629 281 629Q273 632 228 634H197Q191 640 191 642T193 659Q197 676 203 680H742Q749 676 749 669Q749 664 736 557T722 447Q720 440 702 440H690Q683 445 683 453Q683 454 686 477T689 530Q689 560 682 579T663 610T626 626T575 633T503 634H480Q398 633 393 631Q388 629 386 623Q385 622 352 492L320 363H375Q378 363 398 363T426 364T448 367T472 374T489 386Q502 398 511 419T524 457T529 475Q532 480 548 480H560Q567 475 567 470Q567 467 536 339T502 207Q500 200 482 200H470Q463 206 463 212Q463 215 468 234T473 274Q473 303 453 310T364 317H309L277 190Q245 66 245 60Q245 46 334 46H359Q365 40 365 39T363 19Q359 6 353 0H336Q295 2 185 2Q120 2 86 2T48 1Z"></path><path id="MJX-1-TEX-N-28" d="M94 250Q94 319 104 381T127 488T164 576T202 643T244 695T277 729T302 750H315H319Q333 750 333 741Q333 738 316 720T275 667T226 581T184 443T167 250T184 58T225 -81T274 -167T316 -220T333 -241Q333 -250 318 -250H315H302L274 -226Q180 -141 137 -14T94 250Z"></path><path id="MJX-1-TEX-N-29" d="M60 749L64 750Q69 750 74 750H86L114 726Q208 641 251 514T294 250Q294 182 284 119T261 12T224 -76T186 -143T145 -194T113 -227T90 -246Q87 -249 86 -250H74Q66 -250 63 -250T58 -247T55 -238Q56 -237 66 -225Q221 -64 221 250T66 725Q56 737 55 738Q55 746 60 749Z"></path></defs><g stroke="currentColor" fill="currentColor" stroke-width="0" transform="scale(1,-1)"><g data-mml-node="math"><g data-mml-node="TeXAtom" data-mjx-texclass="ORD"><g data-mml-node="mo"><use data-c="24" xlink:href="#MJX-1-TEX-N-24"></use></g></g><g data-mml-node="mi" transform="translate(500,0)"><use data-c="1D6FE" xlink:href="#MJX-1-TEX-I-1D6FE"></use></g><g data-mml-node="mo" transform="translate(1320.8,0)"><use data-c="3D" xlink:href="#MJX-1-TEX-N-3D"></use></g><g data-mml-node="mfrac" transform="translate(2376.6,0)"><g data-mml-node="mrow" transform="translate(767.6,552.1) scale(0.707)"><g data-mml-node="mpadded"><g data-mml-node="mrow"></g></g><g data-mml-node="mstyle" transform="scale(1.414)"><g data-mml-node="TeXAtom" data-mjx-texclass="ORD"><g data-mml-node="mn"><use data-c="31" xlink:href="#MJX-1-TEX-N-31"></use></g></g></g></g><g data-mml-node="mrow" transform="translate(220,-448.1) scale(0.707)"><g data-mml-node="mpadded"><g data-mml-node="mrow"></g></g><g data-mml-node="mstyle" transform="scale(1.414)"><g data-mml-node="TeXAtom" data-mjx-texclass="ORD"><g data-mml-node="msub"><g data-mml-node="mi"><use data-c="1D45B" xlink:href="#MJX-1-TEX-I-1D45B"></use></g><g data-mml-node="TeXAtom" transform="translate(633,-150) scale(0.707)" data-mjx-texclass="ORD"><g data-mml-node="mi"><use data-c="1D457" xlink:href="#MJX-1-TEX-I-1D457"></use></g><g data-mml-node="mi" transform="translate(412,0)"><use data-c="1D45A" xlink:href="#MJX-1-TEX-I-1D45A"></use></g></g></g></g></g></g><rect width="1795.2" height="60" x="120" y="220"></rect></g><g data-mml-node="munder" transform="translate(4578.4,0)"><g data-mml-node="mo"><use data-c="2211" xlink:href="#MJX-1-TEX-SO-2211"></use></g><g data-mml-node="TeXAtom" transform="translate(1089,-285.4) scale(0.707)" data-mjx-texclass="ORD"><g data-mml-node="msub"><g data-mml-node="mi"><use data-c="1D465" xlink:href="#MJX-1-TEX-I-1D465"></use></g><g data-mml-node="mi" transform="translate(605,-150) scale(0.707)"><use data-c="1D456" xlink:href="#MJX-1-TEX-I-1D456"></use></g></g><g data-mml-node="mo" transform="translate(899,0)"><use data-c="2208" xlink:href="#MJX-1-TEX-N-2208"></use></g><g data-mml-node="msub" transform="translate(1566,0)"><g data-mml-node="mi"><use data-c="1D445" xlink:href="#MJX-1-TEX-I-1D445"></use></g><g data-mml-node="TeXAtom" transform="translate(792,-150) scale(0.707)" data-mjx-texclass="ORD"><g data-mml-node="mi"><use data-c="1D456" xlink:href="#MJX-1-TEX-I-1D456"></use></g><g data-mml-node="mo" transform="translate(345,0)"><use data-c="2C" xlink:href="#MJX-1-TEX-N-2C"></use></g><g data-mml-node="mi" transform="translate(623,0)"><use data-c="1D457" xlink:href="#MJX-1-TEX-I-1D457"></use></g></g></g></g></g><g data-mml-node="msub" transform="translate(8104.2,0)"><g data-mml-node="mi"><use data-c="1D466" xlink:href="#MJX-1-TEX-I-1D466"></use></g><g data-mml-node="mi" transform="translate(523,-150) scale(0.707)"><use data-c="1D456" xlink:href="#MJX-1-TEX-I-1D456"></use></g></g><g data-mml-node="mo" transform="translate(9143.4,0)"><use data-c="2212" xlink:href="#MJX-1-TEX-N-2212"></use></g><g data-mml-node="msub" transform="translate(10143.6,0)"><g data-mml-node="mi"><use data-c="1D439" xlink:href="#MJX-1-TEX-I-1D439"></use></g><g data-mml-node="TeXAtom" transform="translate(676,-150) scale(0.707)" data-mjx-texclass="ORD"><g data-mml-node="mi"><use data-c="1D45A" xlink:href="#MJX-1-TEX-I-1D45A"></use></g><g data-mml-node="mo" transform="translate(878,0)"><use data-c="2212" xlink:href="#MJX-1-TEX-N-2212"></use></g><g data-mml-node="mn" transform="translate(1656,0)"><use data-c="31" xlink:href="#MJX-1-TEX-N-31"></use></g></g></g><g data-mml-node="mo" transform="translate(12394.2,0)"><use data-c="28" xlink:href="#MJX-1-TEX-N-28"></use></g><g data-mml-node="msub" transform="translate(12783.2,0)"><g data-mml-node="mi"><use data-c="1D465" xlink:href="#MJX-1-TEX-I-1D465"></use></g><g data-mml-node="mi" transform="translate(605,-150) scale(0.707)"><use data-c="1D456" xlink:href="#MJX-1-TEX-I-1D456"></use></g></g><g data-mml-node="mo" transform="translate(13682.1,0)"><use data-c="29" xlink:href="#MJX-1-TEX-N-29"></use></g><g data-mml-node="TeXAtom" data-mjx-texclass="ORD" transform="translate(14071.1,0)"><g data-mml-node="mo"><use data-c="24" xlink:href="#MJX-1-TEX-N-24"></use></g></g></g></g></svg></mjx-container><p>--></p>]]></content>
<categories>
<category> 技术闲聊 </category>
</categories>
<tags>
<tag> 技术闲聊 </tag>
<tag> 北邮人论坛 </tag>
</tags>
</entry>
<entry>
<title>自再现模的迭代法的Matlab代码</title>
<link href="/2021/10/05/%E6%BF%80%E5%85%89%E5%8E%9F%E7%90%86%E8%AF%BE%E7%A8%8B%E8%AE%BE%E8%AE%A1-%E8%87%AA%E5%86%8D%E7%8E%B0%E6%A8%A1%E7%9A%84%E8%BF%AD%E4%BB%A3%E6%B3%95-%E7%9A%84%E4%BB%A3%E7%A0%81/"/>
<url>/2021/10/05/%E6%BF%80%E5%85%89%E5%8E%9F%E7%90%86%E8%AF%BE%E7%A8%8B%E8%AE%BE%E8%AE%A1-%E8%87%AA%E5%86%8D%E7%8E%B0%E6%A8%A1%E7%9A%84%E8%BF%AD%E4%BB%A3%E6%B3%95-%E7%9A%84%E4%BB%A3%E7%A0%81/</url>
<content type="html"><![CDATA[<h1 id="自再现模的迭代法的matlab代码">自再现模的迭代法的Matlab代码</h1><p>垂雷大学激光工程的作业,网上找了一下<a href="https://wenku.baidu.com/view/994ceae9f8c75fbfc77db25d.html">百度文库有篇相关的文章</a>,不过里面的代码写的不太规范(命名啊,空格啊),就按照自己的习惯改了改,再说百度文库也不好复制粘贴,就放在这里吧。万一有人用得着呢?</p><p>(一个课程的同学别抄啊)</p><pre><code>% 注:QU渡越函数在提交的同一目录下,缺少这个函数无法运行clearclcglobal steps cavity_length waveloss mirror_long wavalength% 定义各种参数的初始值wavalength = 0.0000006328; %波长cavity_length = 0.00006328; %腔长mirror_long = 0.00001582; %镜长N = 300; %渡越次数waveloss = 2*pi/wavalength; %波失steps = 500; %步长% 声明变量的空间x = linspace(-mirror_long, mirror_long, steps);uN = ones(1,steps);u1 = ones(1,steps);u_n = ones(1,steps);% 经过1次渡越for i = 1:steps u1(i) = QU(x(i),u_n);endu_n1 = u1/max(abs(u1));% 经过N次渡越for i = 1:N for j = 1:steps uN(j) = QU(x(j),u_n); end u_n= uN/max(abs(uN));end% 做图,振幅subplot(2,1,1)grid onplot(x,abs(uN)/abs(uN(steps/2)), 'b--')hold onplot(x,abs(u1)/abs(u1(steps/2)),'r')title('振幅');xlabel('振幅分布');ylabel('相对振幅');angle_uN=angle(uN)/pi*180;angle_u1=angle(u1)/pi*180;angle_uN=angle_uN-angle_uN(steps/2);angle_u1=angle_u1-angle_u1(steps/2);%做图,相位subplot(2,1,2)grid onplot(x,angle_uN, 'b--')hold onplot(x,angle_u1, 'r')title('相位');xlabel('相位分布');ylabel('相对相位');</code></pre><p>QU 函数的代码(文件名为QU.m ,跟上面的代码放在一起就好)</p><pre><code>function y=QU(x,u)global steps cavity_length waveloss mirror_long wavalengthx_=linspace(-mirror_long,mirror_long,steps);step_length=2*mirror_long/(steps-1);y=sqrt(1i/cavity_length/wavalength*exp(-1i*waveloss*cavity_length))*sum(exp(-1i*waveloss/2/cavity_length*(-x_+x).^2).*u)*step_length;</code></pre><pre><code> ```yml _config.yml highlight: enable: true line_number: true auto_detect: false tab_replace: markdown: render: html: true xhtmlOut: false breaks: false linkify: true typographer: true quotes: '“”‘’' plugins: - markdown-it-abbr - markdown-it-footnote - markdown-it-ins - markdown-it-sub - markdown-it-sup - markdown-it-deflist anchors: level: 1 collisionSuffix: 'v' permalink: false permalinkClass: header-anchor permalinkSymbol: "" permalinkBefore: false date_format: ll archive_generator: per_page: 0 yearly: true monthly: false daily: false theme: cutie ```</code></pre><p>结果大概长这样~</p><figure><img src="https://i.loli.net/2021/10/05/4mP3CAgilEQ9b2y.jpg" alt="结果.jpg" /><figcaption aria-hidden="true">结果.jpg</figcaption></figure>]]></content>
<categories>
<category> 光通信 </category>
</categories>
<tags>
<tag> 光通信 </tag>
<tag> Matlab </tag>
<tag> 激光工程 </tag>
</tags>
</entry>
<entry>
<title>Hello World</title>
<link href="/2021/10/04/hello-world/"/>
<url>/2021/10/04/hello-world/</url>
<content type="html"><![CDATA[<p>Welcome to <a href="https://hexo.io/">Hexo</a>! This is your very first post. Check <a href="https://hexo.io/docs/">documentation</a> for more info. If you get any problems when using Hexo, you can find the answer in <a href="https://hexo.io/docs/troubleshooting.html">troubleshooting</a> or you can ask me on <a href="https://github.com/hexojs/hexo/issues">GitHub</a>.</p><h2 id="quick-start">Quick Start</h2><h3 id="create-a-new-post">Create a new post</h3><div class="sourceCode" id="cb1"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> hexo new <span class="st">"My New Post"</span></span></code></pre></div><p>More info: <a href="https://hexo.io/docs/writing.html">Writing</a></p><h3 id="run-server">Run server</h3><div class="sourceCode" id="cb2"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> hexo server</span></code></pre></div><p>More info: <a href="https://hexo.io/docs/server.html">Server</a></p><h3 id="generate-static-files">Generate static files</h3><div class="sourceCode" id="cb3"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> hexo generate</span></code></pre></div><p>More info: <a href="https://hexo.io/docs/generating.html">Generating</a></p><h3 id="deploy-to-remote-sites">Deploy to remote sites</h3><div class="sourceCode" id="cb4"><pre class="sourceCode bash"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> hexo deploy</span></code></pre></div><p>More info: <a href="https://hexo.io/docs/one-command-deployment.html">Deployment</a></p>]]></content>
</entry>
<entry>
<title>【补档】站在虚拟与现实的十字路口————keep贝拉语音跑步课程打卡十天记录</title>
<link href="/2021/09/20/%E7%AB%99%E5%9C%A8%E8%99%9A%E6%8B%9F%E4%B8%8E%E7%8E%B0%E5%AE%9E%E7%9A%84%E5%8D%81%E5%AD%97%E8%B7%AF%E5%8F%A3keep%E8%B4%9D%E6%8B%89%E8%AF%AD%E9%9F%B3%E8%B7%91%E6%AD%A5%E8%AF%BE%E7%A8%8B%E6%89%93%E5%8D%A1%E5%8D%81%E5%A4%A9%E8%AE%B0%E5%BD%95/"/>
<url>/2021/09/20/%E7%AB%99%E5%9C%A8%E8%99%9A%E6%8B%9F%E4%B8%8E%E7%8E%B0%E5%AE%9E%E7%9A%84%E5%8D%81%E5%AD%97%E8%B7%AF%E5%8F%A3keep%E8%B4%9D%E6%8B%89%E8%AF%AD%E9%9F%B3%E8%B7%91%E6%AD%A5%E8%AF%BE%E7%A8%8B%E6%89%93%E5%8D%A1%E5%8D%81%E5%A4%A9%E8%AE%B0%E5%BD%95/</url>
<content type="html"><![CDATA[<p>[原文发表在keep,ku们能处]</p><p>乔布斯说,希望苹果“站在科技和艺术的十字路口”。在练习了十天的keep提供的贝拉跑步课程后,我觉得keep的贝拉语音课程站在了虚拟与现实的实际路口。</p><p>有一个关于二次元笑话这样讲,说当现实生活中问起“二次元”时,说“什么是二次元”的大概率是现充,说“我是二次元”的是萌二,而说“我不是二次元”,那就是纯纯的二次元了。这个其实反应了现在很多成熟二次元的一个普遍观点,千万不要把自己的二次元带入生活。就想黑暗森林里面的文明一样,藏好自己,做好伪装,不要交流。或许是二次元真的会对生活有不好的影响,或许是二次元会遭受一般人的偏见。总之,我也一直奉行这个观点,不管是花哨的动漫人物卫衣,或者是二次元挂坠,都小心翼翼的去避免。二次元就像是封建王朝不得干政的后宫一样,即使在其中多么愉快,始终没有对现实生活产生什么真正的影响。</p><p>但贝拉的跑步课程不同,这是我第一次乐于让二次元来影响我的生活,因为这种影响是积极的。或许有人会站出来笑话我:你个沙卵是不是入脑有点厉害了啊,为了听套皮人的一段语音,折腾着去跑步。可是这种批评是不成立的,因为这样的入脑对现实生活并无坏处。</p><p>在此之前,我是一个从不跑步的死宅。虽然身体并不差,身材也并不够“死宅,可是锻炼这种事在繁忙的学业中简直无暇顾及。可是因为这节跑步课程,我确确实实的有了很多的锻炼量,我的生活变得更好了,跑完步后做事的效率也比以往要高了。不论为了听23分钟的语音而跑步显得多么幼稚,这些锻炼为我带来的生活上的改变是确确实实的。而且,正如贝拉在课程中所说,我发现我好像有跑步的天赋呢。拉姐读的跑步课程相当专业,提升相当迅速,就在今天,我的配速也终于突破了6分钟,同步率也达到了100(这仅仅是10天的效果,我已经将近两年没有正经跑步了)。或许有一天,我会不看as了,跑步这个习惯却有可能一直留下来。那时候我会不会想,与asoul的相遇是一段多么奇妙的缘分啊。</p><p>虚拟和现实没有划清界限,例如网恋云云,结果往往如同车祸一样惨淡,这样的事总会让大家觉得心智不成熟。现在“突破次元壁”是一个很流行的话题,这更像是一座高架桥,让二次元的车可以上三次元的路了,可两条路仍然处在完全不同的平面。而keep的贝拉课程更像是虚拟与现实,二次元与三次元交汇的十字路口,而且它向大家证明了:当我们站在虚拟与现实的十字路口时,并不会总是产生惨不忍睹的车祸,也有可能会让现实这条大路更加宽广而通畅。</p>]]></content>
<categories>
<category> 生活 </category>
</categories>
<tags>
<tag> 发病 </tag>
<tag> A-soul </tag>
</tags>
</entry>
<entry>
<title>【补档】毕业了,说些心里话让心里好受一点</title>
<link href="/2021/06/30/%E6%AF%95%E4%B8%9A%E4%BA%86%EF%BC%8C%E8%AF%B4%E4%BA%9B%E5%BF%83%E9%87%8C%E8%AF%9D%E8%AE%A9%E5%BF%83%E9%87%8C%E5%A5%BD%E5%8F%97%E4%B8%80%E7%82%B9/"/>
<url>/2021/06/30/%E6%AF%95%E4%B8%9A%E4%BA%86%EF%BC%8C%E8%AF%B4%E4%BA%9B%E5%BF%83%E9%87%8C%E8%AF%9D%E8%AE%A9%E5%BF%83%E9%87%8C%E5%A5%BD%E5%8F%97%E4%B8%80%E7%82%B9/</url>
<content type="html"><![CDATA[<p>原帖发于<a href="https://bbs.byr.cn/#!article/Feeling/3173739">北邮人论坛</a></p><p>可以听着这首歌读哦~ <a href="http://music.163.com/song?id=395461&userid=601391192">友谊地久天长</a></p><p>原本打算发在盆友圈的,但是害怕丢人只能来论坛倾诉一下。最近快毕业了,又收到了电子院研的录取通知书,来说一点心里话好了。</p><p>我真的是个幸运的孩子,真的。四年前高考出分的时候,自己知道没有考好,整个人的精神状态都是烂掉的。不用说查分数了,填表志愿的事情都完全没有问过,每天只是昏昏噩噩的玩炉石传说。即便自己毫不上心,爸爸妈妈还是关心我的。他们力排众议,给我报了北邮的国际学院。那时我最喜欢的学科是生物,完全不知写代码为何物,身边见识短浅的长辈疯狂的唱衰计算机和宣扬通信已经没落,并且对国际学院惊人的学费嗤之以鼻。</p><p>我就是这样稀里糊涂上了大学,专业是电信工程及管理,开学时的我几乎是个it方面的白痴,甚至不知道软件的后缀应该是“.exe”。我真的很幸运,很幸运,父母亲做了一个完美的选择,这个选择里几乎没有我的贡献。虽然选择完全不是自己做出的,可是我发现北邮,特别是国际学院,真的是来对了地方。这四年可能是我成长最快的四年,这里有最优秀和友善的同学和朋友,博学而有耐心的各位老师教授,百忙之中为我修改简历和提供建议的各位前辈,与这些人相遇真的是我这一辈子的运气。这四年学生生活中,我发现麦克斯韦方程组是如此的优美,写代码虽然接触的晚但自己写起来并不困难,果园的英语教学虽然难受但最终也被克服。北邮也交给了我责任和担当。北邮人求真务实的精神更是让我为之倾佩。在高中同学们还在炫耀父母亲带来的红利时,我惊讶的发现北邮人以自食其力为傲;无论。我觉得,这便是君子的修为,绅士的担当。</p><p>或许这就是上错花轿嫁对郎吧,倘若让我自己来选,北京邮电大学国际学院恐怕在所有平行世界都不会出现在我的志愿书上。可是四年的学习经历告诉我,这就是最好的而且是唯一的选择,我真的非常谢谢我的爸爸妈妈的选择。二老既不会用严谨的二阶倒数寻找极值点,也不会复杂的神经网络梯度下降法,但是他们就是得出了这个问题优美而惊人的解答。</p><p>今天就和可爱的同学们分别了。我的性格不好,四年来可能多有冒犯,也谢谢我的同学们并不因此生我的气。早上从寝室离开时室友们都还在熟睡,晚上回到寝室就只剩自己一个人在寝室中。导员告诉我们,不要最后一个离开寝室,会很难受,我本来不以为然。可现在提笔在手,有很多话想说又不知道怎么说出来,只是想哭,于是就这样吧。</p>]]></content>
<categories>
<category> 生活 </category>
</categories>
<tags>
<tag> 情感 </tag>
</tags>
</entry>
<entry>
<title>剑指offer的内容(python版)(未完成)</title>
<link href="/2020/10/22/%E5%89%91%E6%8C%87offer%E7%9A%84%E5%86%85%E5%AE%B9%EF%BC%88python%E7%89%88%EF%BC%89/"/>
<url>/2020/10/22/%E5%89%91%E6%8C%87offer%E7%9A%84%E5%86%85%E5%AE%B9%EF%BC%88python%E7%89%88%EF%BC%89/</url>
<content type="html"><![CDATA[]]></content>
<categories>
<category> 编程开发 </category>
</categories>
<tags>
<tag> 算法题 </tag>
<tag> 编程开发 </tag>
</tags>
</entry>
<entry>
<title>友链</title>
<link href="/2000/01/25/%E5%8F%8B%E9%93%BE/"/>
<url>/2000/01/25/%E5%8F%8B%E9%93%BE/</url>
<content type="html"><![CDATA[<ul><li><p><a href="http://blog.rinchannow.top/">RinChanNOW's blog</a></p></li><li><p><a href="https://blog.gaokeyong.top/">高轲用's Blog</a></p></li><li><p><a href="https://blog.ba7lcy.com/">BA7LCY的记事本</a></p></li><li><p><a href="https://ry.huaji.store/">无存在感小透明</a></p></li><li><p><a href="https://jungle430.github.io/">Jungle's Blog</a></p></li></ul>]]></content>
<categories>
<category> 友链 </category>
</categories>
</entry>
</search>