-
Notifications
You must be signed in to change notification settings - Fork 0
/
search.xml
4996 lines (4988 loc) · 394 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
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title>Hello World</title>
<url>//1/</url>
<content><![CDATA[<h2 id="替换windows记事本">替换Windows记事本</h2>
<p><a href="https://github.com/rizonesoft/Notepad3">Notepad3</a>
功能强大,速度更佳</p>
<h2 id="typora-已支持-picgo-上传图片">Typora 已支持 PicGo 上传图片</h2>
<p>点击<a
href="https://support.typora.io/Upload-Image/"><strong>了解更多</strong></a>有使用指引</p>
<p><img
src="https://image.pencilq.com/images/2020/03/13/typora-picgo_compress.jpg" /></p>
<span id="more"></span>
<h2 id="powershell-ps1-脚本输出中文到剪贴板乱码">Powershell ps1
脚本输出中文到剪贴板乱码</h2>
<p><strong>解决方案1</strong></p>
<p>使用 <code>Set-Clipboard</code> 代替 <code>clip.exe</code></p>
<blockquote>
<p>参考 <a
href="https://stackoverflow.com/questions/48016113/how-to-pass-utf-8-characters-to-clip-exe-with-powershell-without-conversion-to-a">How
to pass UTF-8 characters to clip.exe with PowerShell without conversion
to another charset?</a></p>
</blockquote>
<p><strong>解决方案2</strong></p>
<ol type="1">
<li>脚本保存格式为 <code>GB2312</code></li>
<li>脚本添加命令
<code>$OutputEncoding = [Console]::OutputEncoding</code></li>
</ol>
<p>示例</p>
<figure class="highlight powershell"><table><tr><td class="code"><pre><span class="line"><span class="variable">$OutputEncoding</span> = [<span class="type">Console</span>]::OutputEncoding</span><br><span class="line"><span class="variable">$text</span> = <span class="string">'中文 English'</span></span><br><span class="line"><span class="variable">$text</span></span><br><span class="line"><span class="variable">$text</span> | clip.exe</span><br></pre></td></tr></table></figure>
<blockquote>
<p>参考链接: <a
href="https://devblogs.microsoft.com/powershell/outputencoding-to-the-rescue/">$OutputEncoding
to the rescue</a></p>
</blockquote>
<h2 id="idm-开启极速-32-线程">IDM 开启极速 32 线程</h2>
<p><img src="https://image.pencilq.com/images/2019/12/26/IDM32.jpg" style="zoom:67%;" /></p>
<h2 id="快速移动应用到另一个虚拟桌面">快速移动应用到另一个虚拟桌面</h2>
<p><a
href="https://github.com/Eun/MoveToDesktop"><i class="fa fa-github fa-fw" aria-hidden="true"></i>
MoveToDesktop</a></p>
<h2 id="视频字幕">视频字幕</h2>
<ol type="1">
<li>上字幕,压制视频:<a href="https://arctime.org/">Arctime
<i class="fa fa-external-link fa-fw" aria-hidden="true" ></i></a></li>
<li>封装字幕:<a href="https://mkvtoolnix.download/">mkvtoolnix
<i class="fa fa-external-link fa-fw" aria-hidden="true" ></i></a>,<a
href="https://www.bilibili.com/read/cv987728/">教程
<i class="fa fa-external-link fa-fw" aria-hidden="true" ></i></a></li>
</ol>
<h2 id="powertoys"><a
href="https://github.com/microsoft/PowerToys/releases">PowerToys
<i class="fa fa-link fa-fw"></i></a></h2>
<ul>
<li>窗口管理器 FancyZones</li>
<li>批量重命名 PowerRename</li>
<li>Win+ 快捷键指南 Shortcut Guide</li>
</ul>
<figure>
<img src="https://image.pencilq.com/images/2019/12/13/PowerToys.jpg"
alt="PowerToys" />
<figcaption aria-hidden="true">PowerToys</figcaption>
</figure>
<h2 id="mathematica-行向量与列向量">Mathematica 行向量与列向量</h2>
<ul>
<li>Mathematica 中表示一行与一列相乘</li>
</ul>
<p><span class="math display">\[
\left[ {\begin{array}{*{20}{c}}
{a_1}&{b_1}&{c_1}
\end{array}} \right]\left[ {\begin{array}{*{20}{c}}
{a_2}\\
{b_2}\\
{c_2}
\end{array}} \right] = a_1a_2 + b_1b_2 + c_1c_2
\]</span></p>
<figure class="highlight mathematica"><table><tr><td class="code"><pre><span class="line"><span class="variable">MatA</span> <span class="operator">=</span> <span class="punctuation">{</span><span class="variable">a1</span><span class="operator">,</span> <span class="variable">b1</span><span class="operator">,</span> <span class="variable">c1</span><span class="punctuation">}</span><span class="operator">;</span></span><br><span class="line"><span class="variable">MatB</span> <span class="operator">=</span> <span class="punctuation">{</span><span class="variable">a2</span><span class="operator">,</span> <span class="variable">b2</span><span class="operator">,</span> <span class="variable">c3</span><span class="punctuation">}</span><span class="operator">;</span></span><br><span class="line"><span class="variable">MatA</span><span class="operator">.</span><span class="variable">MatB</span></span><br><span class="line"></span><br><span class="line"><span class="comment">(*Out=a1 a2 + b1 b2 + c1 c3*)</span></span><br></pre></td></tr></table></figure>
<ul>
<li>表示一列与一行相乘</li>
</ul>
<p><span class="math display">\[
\left[ {\begin{array}{*{20}{c}}
{a_1}\\
{b_1}\\
{c_1}
\end{array}} \right]\left[ {\begin{array}{*{20}{c}}
{a_2}&{b_2}&{c_2}
\end{array}} \right] = \left[ {\begin{array}{*{20}{c}}
{a_1a_2}&{a_1b_2}&{a_1c_3}\\
{a_2b_1}&{b_1b_2}&{b_1b_3}\\
{a_2c_1}&{b_2c_1}&{c_1c_3}
\end{array}} \right]
\]</span></p>
<figure class="highlight mathematica"><table><tr><td class="code"><pre><span class="line"><span class="variable">MatA</span> <span class="operator">=</span> <span class="punctuation">{</span><span class="punctuation">{</span><span class="variable">a1</span><span class="punctuation">}</span><span class="operator">,</span> <span class="punctuation">{</span><span class="variable">b1</span><span class="punctuation">}</span><span class="operator">,</span> <span class="punctuation">{</span><span class="variable">c1</span><span class="punctuation">}</span><span class="punctuation">}</span><span class="operator">;</span></span><br><span class="line"><span class="variable">MatB</span> <span class="operator">=</span> <span class="punctuation">{</span><span class="punctuation">{</span><span class="variable">a2</span><span class="operator">,</span> <span class="variable">b2</span><span class="operator">,</span> <span class="variable">c3</span><span class="punctuation">}</span><span class="punctuation">}</span><span class="operator">;</span></span><br><span class="line"><span class="variable">MatA</span><span class="operator">.</span><span class="variable">MatB</span></span><br><span class="line"></span><br><span class="line"><span class="comment">(*Out={{a1 a2, a1 b2, a1 c3}, {a2 b1, b1 b2, b1 c3}, {a2 c1, b2 c1, c1 c3}}*)</span></span><br></pre></td></tr></table></figure>
<p>查看维数,列乘行的情形下,两个矩阵维数需要满足 <span
class="math inline">\(m \times n\)</span> 和 <span
class="math inline">\(n\times m\)</span> 才能运算。这也是上面需要将
<code>{a,b,c}</code> 换成 <code>{ {a},{b},{c}}</code> 的原因。</p>
<figure class="highlight mathematica"><table><tr><td class="code"><pre><span class="line"><span class="built_in">Dimensions</span> <span class="operator">/@</span> <span class="punctuation">{</span><span class="variable">MatA</span><span class="operator">,</span> <span class="variable">MatB</span><span class="punctuation">}</span></span><br><span class="line"></span><br><span class="line"><span class="comment">(*Out={{3, 1}, {1, 3}}*)</span></span><br></pre></td></tr></table></figure>
<h2 id="mathematica-自动保存">Mathematica 自动保存</h2>
<p>对所有笔记本开启运行后自动保存,详情参考 <a
href="https://mathematica.stackexchange.com/a/14036/63168"><i class="fa fa-link fa-fw"></i></a></p>
<figure class="highlight mathematica"><table><tr><td class="code"><pre><span class="line"><span class="built_in">CurrentValue</span><span class="punctuation">[</span><span class="built_in">$FrontEnd</span><span class="operator">,</span> <span class="string">"NotebookAutoSave"</span><span class="punctuation">]</span> <span class="operator">=</span> <span class="built_in">True</span></span><br></pre></td></tr></table></figure>
<h2 id="section"></h2>
<p>在 Mathemtica 中导入 csv
表格后,发现最后多了几百个空值行。在知乎发现相似的问题,按照 <a
href="https://www.zhihu.com/question/25121978/answer/94400178">melody
<i class="fa fa-link fa-fw"></i></a> 的回答成功解决。</p>
<div class="note success"><ol type="1">
<li>选中你想开始删除的那堆空白行的首行,同时点键盘 ctrl+shift +
向下箭头(如果多余空白行在右侧,那就向右键头),全选全部无用空格行;</li>
<li>第二,右键删除;</li>
<li>第三,重点来了!删除后啥都先别干,一定要点保存!然后关闭 excel
表格,重新打开。</li>
<li>done!第三步不做的话,excel 自己又填充回来!</li>
</ol>
</div>
<blockquote>
<p>作者:melody
链接:https://www.zhihu.com/question/25121978/answer/94400178 来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。</p>
</blockquote>
<h2 id="section-1"></h2>
<p><a
href="https://cniter.github.io/posts/6315717b.html">FFmpeg剪切与合并命令使用小结
<i class="fa fa-external-link fa-fw"></i></a></p>
<h2 id="section-2"></h2>
<p>期刊影响因子查询</p>
<p><a href="http://www.letpub.com.cn/index.php?page=journalapp">letpub
<i class="fa fa-external-link fa-fw"></i></a></p>
<p><a href="http://sci.justscience.cn">sci 期刊 中文核心
<i class="fa fa-external-link fa-fw"></i></a></p>
<h2 id="section-3"></h2>
<p>win10 <a
href="https://stepneverstop.github.io/win-rightclick-create-md.html">右键新建
<i class="fa fa-external-link fa-fw"></i></a> markdown 文件</p>
<h2 id="section-4"></h2>
<p>使用 picgo-plugin-web-uploader 上传图片到 Chevereto 的 <a
href="https://github.com/yuki-xin/picgo-plugin-web-uploader/issues/3#issuecomment-529389034">配置
<i class="fa fa-github"></i></a></p>
<figure class="highlight json"><table><tr><td class="code"><pre><span class="line">url <span class="punctuation">:</span> http<span class="punctuation">:</span><span class="comment">//your-site/api/1/upload</span></span><br><span class="line">paramName<span class="punctuation">:</span> source</span><br><span class="line">jsonPath<span class="punctuation">:</span> image.url</span><br><span class="line">customBody<span class="punctuation">:</span> <span class="punctuation">{</span><span class="attr">"key"</span><span class="punctuation">:</span><span class="string">"yourkey"</span><span class="punctuation">}</span></span><br></pre></td></tr></table></figure>
<h2 id="section-5"></h2>
<p>Markdown 链接 <code>[text](link)</code> 中,link 包含 <code>()</code>
会导致转义失败,使用 <code>%28</code> 代替
<code>(</code>,<code>%29</code> 代替 <code>)</code>。</p>
<blockquote>
<p><a href="https://gohom.win/2015/12/24/MD-bracket/">Markdown
链接括号的问题 <i class="fa fa-external-link fa-fw"></i></a></p>
</blockquote>
]]></content>
</entry>
<entry>
<title>有趣的东西</title>
<url>//10/</url>
<content><![CDATA[<div class="tabs" id="tabsone"><ul class="nav-tabs"><li class="tab active"><a href="#tabsone-1"><i class="fa fa-forward"></i>克罗地亚的双头蛇</a></li></ul><div class="tab-content"><div class="tab-pane active" id="tabsone-1"><video src="https://file.pencilq.com/videos/Two-Headed%20Snake%20Found%20In%20Croatia-sTpIRbrOruA.mkv" preload="metadata" controlslist="nodownload" controls playsinline poster>
</video>
<p><a href="https://www.youtube.com/watch?v=sTpIRbrOruA">Two-Headed
Snake Found In Croatia
<i class="fa fa-youtube-square fa-fw"></i></a></p></div></div></div>
<span id="more"></span>
<div class="tabs" id="tabsone"><ul class="nav-tabs"><li class="tab active"><a href="#tabsone-1"><i class="fa fa-forward"></i>剪切稀化流体</a></li><li class="tab"><a href="#tabsone-2"><i class="fa fa-forward"></i>眼镜蛇波/炸弹棒</a></li><li class="tab"><a href="#tabsone-3"><i class="fa fa-forward"></i>气凝胶</a></li></ul><div class="tab-content"><div class="tab-pane active" id="tabsone-1"><p>洗发水,沐浴露,沼泽</p>
<video src="https://file.pencilq.com/videos/Shear%20thinning.mkv" preload="metadata" controlslist="nodownload" controls playsinline poster>
</video>
<p><a href="https://www.wikiwand.com/en/Shear_thinning">维基百科
<i class="fa fa-wikipedia-w fa-fw"></i></a> <a
href="https://www.youtube.com/watch?v=agCf0alxpJY">剪切稀化非牛顿流体
<i class="fa fa-youtube-square fa-fw"></i></a></p></div><div class="tab-pane" id="tabsone-2"><div
style="position: relative; width: 100%; height: 0; padding-bottom: 75%;">
<iframe src="//player.bilibili.com/player.html?aid=999354&cid=1444859&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="position: absolute; width: 100%; height: 100%; left: 0; top: 0;">
</iframe>
</div></div><div class="tab-pane" id="tabsone-3"><video src="https://file.pencilq.com/videos/World's%20Lightest%20Solid!-AeJ9q45PfD0.mkv" preload="metadata" controlslist="nodownload" controls playsinline poster>
</video>
<p><a
href="https://www.youtube.com/watch?v=AeJ9q45PfD0">世界上最轻的固体
<i class="fa fa-youtube-square fa-fw"></i></a></p></div></div></div>
]]></content>
</entry>
<entry>
<title>matebook14 Linux</title>
<url>//12/</url>
<content><![CDATA[<blockquote class="blockquote-center">
<p>中午睡醒人迷糊 打开知乎惊坐起</p>
</blockquote>
<span id="more"></span>
<p><img
src="https://image.pencilq.com/images/2019/09/08/matebook14-zhihu.jpg" /></p>
<p><img
src="https://image.pencilq.com/images/2019/09/08/caozuo.gif" /></p>
<blockquote class="blockquote-center">
<p>就让我先以身试水吧</p>
</blockquote>
<p><img src="https://image.pencilq.com/images/2019/09/08/weisuo.gif" />
<img src="https://image.pencilq.com/images/2019/09/08/xiadan.jpg" /></p>
<p>附上邪恶的链接:</p>
<p><a
href="https://consumer.huawei.com/cn/support/laptops/matebook-14/">Matebook
14 驱动下载 <i class="fa fa-link fa-fw"></i></a> <a
href="https://zsaxi.com/4196">MateBook 14 第三方 Linux 版 开箱评测
<i class="fa fa-link fa-fw"></i></a></p>
]]></content>
</entry>
<entry>
<title>机器学习资料收集</title>
<url>//11/</url>
<content><![CDATA[<h2 id="section"><a class="btn" href="https://github.com/scutan90/DeepLearning-500-questions "><i class="fa fa-github-square fa-lg fa-fw"></i>深度学习 500 问</a></h2>
<h2 id="section-1"><a class="btn" href="https://github.com/exacity/deeplearningbook-chinese "><i class="fa fa-github-square fa-lg fa-fw"></i>深度学习中文版</a></h2>
<a class="btn" href="https://nndl.github.io/ "><i class="fa fa-github-square fa-lg fa-fw"></i>神经网络与深度学习</a>
<p>-<span id="more"></span> <a class="btn" href="https://github.com/machinelearningmindset/machine-learning-course "><i class="fa fa-github-square fa-lg fa-fw"></i>Machine Learning Course with Python</a> - <a class="btn" href="https://github.com/Mikoto10032/DeepLearning "><i class="fa fa-github-square fa-lg fa-fw"></i>深度学习入门教程 && 优秀文章</a></p>
]]></content>
</entry>
<entry>
<title>Tube 和 Pipe 区别</title>
<url>//13/</url>
<content><![CDATA[<h2 id="t92-和-p92-区别">T92 和 P92 区别</h2>
<p>关于 T/P 的区别,T 管一般指的是 Tube
即小管,一般在锅炉中用作过热器或再热器等部位,P
管是大管,一般用在主蒸汽管道上的。像 92 钢 T 与 P
在成分上没有差别,只是工艺上不一样,所以使用时组织是不太一样的。</p>
<p>T92
用于制造火力电站锅炉的<strong>过热器或者再热器</strong>,管子外表面承受高温和燃料燃烧产生的烟气的腐蚀,内表面受高温高压蒸汽冲蚀。</p>
<p>P92
用于制造<strong>集箱和蒸汽管道</strong>,主要用于输送高温高压蒸汽,受高温高压蒸汽冲蚀。</p>
<p>二者的成分控制范围一样,但是生产工艺不一样。目前生产 T92 采用穿孔 +
冷拔或者冷轧工艺,P92 采用锻造、热轧或者挤压等工艺,由于生产工艺不同导致
P92 的组织会比 T92 粗大。</p>
<span id="more"></span>
<p>http://muchong.com/html/201105/3189618.html</p>
<h2 id="tube-和-pipe-区别">Tube 和 Pipe 区别</h2>
<table>
<colgroup>
<col style="width: 3%" />
<col style="width: 39%" />
<col style="width: 57%" />
</colgroup>
<thead>
<tr class="header">
<th>区别</th>
<th>Tube</th>
<th>Pipe</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>截面形状</td>
<td>Tube 有正方形管口的,有长方形管口的,也有圆形的</td>
<td>Pipe 都是圆形的</td>
</tr>
<tr class="even">
<td>韧性</td>
<td>Tube 有刚性的,也有紫铜、黄铜做的挠性 Tube</td>
<td>Pipe 都是刚性的,抗弯折</td>
</tr>
<tr class="odd">
<td>管径(仪表常用)</td>
<td>Tube是<strong>小管径</strong>的管子,管径一般在
1/8"<sub>5/8"(=3</sub>16 mm) 之间</td>
<td>Pipe是<strong>大管径</strong>的管子,管径一般在 15~1500 mm(=1/2~60")
之间。也有小于或大于此范围的 Pipe,但使用量少</td>
</tr>
<tr class="even">
<td>尺寸标准特点</td>
<td>Tube 用<strong>外径 OD</strong> 表示管子的管径规格,如 1/4" (6.25mm)
OD Tube 表示外径为 1/4" 的 Tube。Tube 注重外径精确,因为 Tube
采用卡套方式连接,外径相同的管子和管件之间可以用卡套连接起来</td>
<td>Pipe 用<strong>公称直径 DN</strong> 表示管子的管径规格。如 DN50 表示
2" 管,可以表示为 $ mm$ ,亦可表示为 $ mm$。Pipe 注重壁厚,因为 Pipe
主要输送流体,对内部受压能力要求高</td>
</tr>
<tr class="odd">
<td>市场简称</td>
<td><strong>Tube
壁厚较薄</strong>,市场称薄壁管,用其实际厚度尺寸(英寸或
mm)表示,一般为 1~2mm</td>
<td>Pipe 的<strong>壁厚是标准的</strong>,一般用壁厚系列号(英文缩写为
Sch. No. , Schedule Number)来表示,Sch. No. 也称为耐压级别号,从 Sch.
No. 5 到 Sch. No.
XXS,不同的管径或材质的管子,各有其标准壁厚系列;或者说 Sch. No.
相同的,但管径或材质不同的管子,其实际壁厚并不相同。</td>
</tr>
<tr class="even">
<td>连接方式</td>
<td>Tube
管壁较薄,不允许在上面套螺纹,经过退火处理后,采用卡套方式连接,也叫<strong>压接连接</strong></td>
<td>Pipe
的连接方式有<strong>法兰连接、螺纹连接</strong>和焊接连接三种,大多数场合用法兰连接,低压场合允许用螺纹连接</td>
</tr>
<tr class="odd">
<td>连接特点</td>
<td>OD 相同的 Tube 均可以用卡套连接,快捷,可多次拆卸</td>
<td>法兰、螺纹等均要注清楚标准号,如 2"-ANSI-150-RF</td>
</tr>
<tr class="even">
<td>管子弯曲</td>
<td>可以根据弯曲角度需要按规定直接弯曲(不需要用管接头),可减少潜在的漏点</td>
<td>弯曲时一般要用肘管接头连接(肘管接头一般为螺纹,若需弯曲管子要拱螺纹)</td>
</tr>
<tr class="odd">
<td>安装</td>
<td>一根6m管子,可根据现场施工具体情况,随意剪切</td>
<td>一根6m管子,可根据现场施工具体情况,随意剪切</td>
</tr>
<tr class="even">
<td>应用场合</td>
<td>Tube
一般用于仪表系统的测量管路、气动信号管路伴热保温,在线分析仪的样品管路中</td>
<td>Pipe 应用十分广泛,工艺管道和公用工程管道均采用 Pipe</td>
</tr>
<tr class="odd">
<td>连接要求</td>
<td>要能应用双卡套及单卡套</td>
<td>不能及用双卡套或单卡套连接</td>
</tr>
<tr class="even">
<td>管子特点</td>
<td>管子一般均为无缝不锈钢紫铜管黄铜管</td>
<td>无缝钢管、有缝钢管根据应用场合选用</td>
</tr>
</tbody>
</table>
<p>相关连接:</p>
<p>http://www.e-umc.cn/materialtypehome/CLA
https://www.metalsupermarkets.com/difference-between-pipe-and-tube/
http://blog.worldwidemetric.com/products/pipes-vs-tubes-is-there-a-difference/</p>
<video src="https://file.pencilq.com/videos/The Difference Between Pipe and Tube-M6te8o9GtXM.mkv" preload="metadata" controlslist="nodownload" controls playsinline poster=""></video>
<p><a href="https://www.youtube.com/watch?v=M6te8o9GtXM">The Difference
Between Pipe and Tube <i class="fa fa-youtube fa-fw"></i></a></p>
<h3
id="需要了解的概念公称直径-nominal-diameter">需要了解的概念:公称直径
nominal diameter</h3>
<p>https://www.wikiwand.com/en/Nominal_Pipe_Size
https://www.quora.com/What-is-nominal-diameter-of-a-pipe</p>
]]></content>
</entry>
<entry>
<title>Visual Studio 技巧:在代码间自由穿梭</title>
<url>//14/</url>
<content><![CDATA[<p>当你在浏览代码时,看到了一个陌生的函数或者自定义类型,你使用转到定义查看该函数或者类型,然后再也找不回跳转过来的地方了。</p>
<span id="more"></span>
<p>##解决方法:</p>
<p>技巧:返回之前跳转的位置 使用快捷键
Ctrl+-,可以跳回到之前光标的所在位置。 使用快捷键
Ctrl+Shift+-,撤销上面的跳转。 使用( Ctrl+-)跳回去之后,如果想在返回,
可用(Ctrl+Shift+-)撤销跳转</p>
<p>##其他一些提高效率的代码浏览快捷键:</p>
<h3 id="页面导航">页面导航</h3>
<p>PageUp 当前页面上翻一页 PageDn 当前页面下翻一页 Ctrl + 数字
切换代码标签页 Ctrl + 方向键 滚动屏幕 Ctrl+G 跳转的制定行 F6
转到定义</p>
<h3 id="光标移动">光标移动:</h3>
<p>Ctrl+] 匹配括号 将光标移动到行首:Home 将光标移动到行末:End
Ctrl+PageUp 光标移动到当前页面顶部 Ctrl+PageDn 光标移动到当前页面底部
Ctrl+Shifit+PageUp 光标从当前位置移动到页面顶部并选中之间的内容
Ctrl+Shifit+PageDw 光标从当前位置移动到页面底部并选中之间的内容</p>
<h3 id="临时调整字体大小">临时调整字体大小</h3>
<p>调大一号 ctrl + 鼠标滚轮上滚 调小一号 ctrl + 鼠标滚轮下滚</p>
<p>本文转载,<a
href="https://www.oschina.net/question/54100_17415">原文地址</a></p>
<hr />
]]></content>
<tags>
<tag>工具</tag>
</tags>
</entry>
<entry>
<title>Mathematica: 自定义中文词云</title>
<url>//15/</url>
<content><![CDATA[<blockquote>
<p><strong>前言</strong>:词云制作前需要对文本进行分词病统计频率。中文分词是中文文本处理的一个基础步骤,也是中文人机自然语言交互的基础模块。不同于英文的是,中文句子中没有词的界限,因此在进行中文自然语言处理时,通常需要先进行分词,分词效果将直接影响词性、句法树等模块的效果。当然分词只是一个工具,场景不同,要求也不同。本文使用在线网站进行处理。</p>
</blockquote>
<span id="more"></span>
<h2 id="默认样式">默认样式</h2>
<p><img
src="https://image.pencilq.com/images/2019/08/31/mma-cloud-1.jpg" /></p>
<h2 id="自定义样式">自定义样式</h2>
<p><img
src="https://image.pencilq.com/images/2019/08/31/mma-cloud-2.jpg" /></p>
<h2 id="文本分词">文本分词</h2>
<ol type="1">
<li>使用在线工具<a
href="http://www.picdata.cn/">图悦网</a>对文本进行分词处理。</li>
<li>导出数据文件,对文件格式进行处理,删除标题行,仅保留
<strong>关键词</strong> 、<strong>词频</strong> <img
src="https://image.pencilq.com/images/2019/08/31/mma-cloud-3.jpg" /></li>
</ol>
<h2 id="处理模板图片">处理模板图片</h2>
<p>将模板图片处理成黑白格式,白色为词云填充的部分 <img
src="https://image.pencilq.com/images/2019/08/31/mma-cloud-4.jpg" /></p>
<h2 id="制作词云">制作词云</h2>
<ol type="1">
<li>分词文件命名 <code>分词.xls</code>,模板图片命名为
<code>模板.png</code>。</li>
<li>创建 <code>Mathematica</code> 文件 <code>**.nb</code>。</li>
<li>上述文件放在同一目录。</li>
</ol>
<p>完整程序 <figure class="highlight mathematica"><table><tr><td class="code"><pre><span class="line"><span class="comment">(*清除全局变量*)</span></span><br><span class="line"><span class="built_in">Clear</span><span class="punctuation">[</span><span class="string">"Global`*"</span><span class="punctuation">]</span></span><br><span class="line"></span><br><span class="line"><span class="comment">(*导入分词文本*)</span></span><br><span class="line"><span class="variable">wordlist</span> <span class="operator">=</span> <span class="built_in">Import</span><span class="punctuation">[</span><span class="built_in">NotebookDirectory</span><span class="punctuation">[</span><span class="punctuation">]</span> <span class="operator"><></span> <span class="string">"分词.xls"</span><span class="punctuation">]</span> <span class="operator">//</span> <span class="built_in">Flatten</span><span class="punctuation">[</span><span class="type">#</span><span class="operator">,</span> <span class="number">1</span><span class="punctuation">]</span> <span class="operator">&;</span></span><br><span class="line"></span><br><span class="line"><span class="comment">(*导入词云模板*)</span></span><br><span class="line"><span class="variable">fig</span> <span class="operator">=</span> <span class="built_in">Import</span><span class="punctuation">[</span><span class="built_in">NotebookDirectory</span><span class="punctuation">[</span><span class="punctuation">]</span> <span class="operator"><></span> <span class="string">"模板.png"</span><span class="punctuation">]</span><span class="operator">;</span></span><br><span class="line"></span><br><span class="line"><span class="comment">(*默认词云样式*)</span></span><br><span class="line"><span class="built_in">WordCloud</span><span class="punctuation">[</span><span class="variable">wordlist</span><span class="punctuation">]</span></span><br><span class="line"></span><br><span class="line"><span class="comment">(*自定义词云样式*)</span></span><br><span class="line"><span class="built_in">WordCloud</span><span class="punctuation">[</span><span class="variable">wordlist</span><span class="operator">,</span> <span class="variable">fig</span><span class="operator">,</span> <span class="built_in">ColorFunction</span> <span class="operator">-></span> <span class="built_in">Yellow</span><span class="operator">,</span> <span class="built_in">Background</span> <span class="operator">-></span> <span class="built_in">Red</span><span class="punctuation">]</span></span><br></pre></td></tr></table></figure></p>
<blockquote>
<p>详细帮助参考<a
href="http://reference.wolfram.com/language/ref/WordCloud.html">官方文档</a>
相关文件,<a
href="https://file.pencilq.com/file_and_note/mma%20word%20cloud.zip">点击下载</a></p>
</blockquote>
<hr />
]]></content>
<tags>
<tag>Mathematica</tag>
</tags>
</entry>
<entry>
<title>ANSYS UPFs 子程序简单介绍及实例</title>
<url>//18/</url>
<content><![CDATA[<blockquote>
<p><strong>转自仿真科技论坛</strong>,<a
href="http://forum.simwe.com/thread-1021888-1-1.html">点击进入原网址,作者师访</a></p>
</blockquote>
<p>首先做一点说明,这里所说的子程序大致分为两类:一类是用户子程序,即可以被用户修改的、多以
User 或 u
开头的、可以在安装文件夹下找到(如下图所示)的、需要重新编译连接的
Fortran 子程序;另一类是一般的子程序,ANSYS 提供给用户方便 ansys
二次开发的,包括子程序(subroutine,无返回值,使用时需要 external
声明语句)和函数(Function,有返回值,使用时不需要 External
声明语句)。</p>
<span id="more"></span>
<p><img
src="https://image.pencilq.com/images/2019/08/31/UPFs-subroutine.jpg" /></p>
<h2 id="材料本构模型开发用户子程序">材料本构模型开发用户子程序</h2>
<ol type="1">
<li><strong>usermat</strong>:在所有用于本构模型开发的子程序中,usermat
是使用范围最广的子程序,单元的每个积分点在每个载荷子步的每次迭代均会调用
usermat。usermat 支持所有最新技术单元(Current-technology
Elements),最新技术单元区别于传统单元。</li>
<li><strong>UserHyper</strong>:虽然 usermat
功能强大,但其无法用于开发超弹性材料,若想实现超弹性材料本构的开发,必须利用
UserHyper 用户子程序。</li>
<li><strong>usercreep</strong> 及 usercr:ANSYS 提供了两个用户子程序
usercreep 及 usercr
来定义用户蠕变方程,这两个用户子程序可用来模拟材料的时间相关粘塑性 /
蠕变行为。usercreep 利用隐式时间积分算法,而 usercr
利用的是显示时间积分算法。usercreep
用于较长时间段的蠕变分析,如岩石及金属的长期蠕变分析;usercr
用于瞬态蠕变分析。</li>
<li><strong>user_tbelastic</strong>:用来定义线弹性材料特征,允许将弹性材料参数定义成温度或坐标的函数,支持大多数最新技术单元。user_tbelastic
仅仅用于定义弹性阶段的材料本构,它可用来与许多非线性材料模型联合使用,例如
BISO、BKIN、MISO、KINH、NLSIO、PLASTIC、CHABOCHE、CAST
IRON、CREEP、EDP(Drucker-Prager 模型)、SMA(形状记忆合金)、PRONY 及
GURSON 等。</li>
<li><strong>userpl</strong>:如果用户想利用传统单元定义塑性或粘塑性本构关系,则可以使用
userpl。适用于
LINK1、LINK8、PIPE20、BEAM23、BEAM24、PLANE42、SOLID45、PIPE60、SOLID62、SOLID65、PLANE82、SOLID92
及 SOLID95。</li>
<li><strong>usersw</strong>:用户膨胀子程序 usersw
用于编写用户自定义的膨胀律,其调用方式是设置 C72=10。</li>
<li><strong>UserVisLaw</strong>:定义粘性模型,仅用于 FLUID141 及
FLUID142 单元。</li>
<li><strong>userfic</strong>:用于定义用户摩擦模型,用于接触单元:CONTA171、CONTA172、CONTA173、CONTA174、CONTA175、CONTA176、CONTA177、CONTA178。</li>
<li><strong>userfc</strong>:定义层合板类材料的破坏准则。</li>
</ol>
<h2 id="单元开发用户子程序">单元开发用户子程序</h2>
<p>开发单元有两种方法:用户子程序(1)和(2)联合使用是一种方法,通过
UserElem 用户子程序可以方便的建立新单元,ElemGetMat
为新单元处理材料本构部分,难度适中;(3)和(4)联合使用是另外一种方法,该方法直接访问
ANSYS 单元相关数据库和文件,难度较大。 1. <strong>UserElem</strong>:从
ANSYS 11.0 开始新增的。使用该子程序创建单元无需直接访问 ANSYS 数据库。
2. <strong>ElemGetMat</strong>:用于调用 ANSYS 标准结构材料库,与
UserElem 结合使用。 3.
<strong>uec100-uec105</strong>:在通过直接访问单元相关数据库和文件的方式创建单元时,用于定义单元特征参数。
4.
<strong>uel100-uel105</strong>:在通过直接访问单元相关数据库和文件的方式创建单元时,用于计算各种单元矩阵(刚度矩阵、比热矩阵等)、单元载荷向量(力载荷、热流载荷等)以及所有单元输出变量。此外还要完成单元输出过程,计算需要保存的各个变量并储存在结果文件中。</p>
<h2 id="单元开发支持子程序">单元开发支持子程序</h2>
以下子程序(注意不是用户子程序)用于单元开发: 1.
<strong>nminfo</strong>:给单元特征向量定义单元名称,输入变量为单元特征向量
ielc(见 ANSYS Inc20
<p>文件夹下的
echprm.inc),单元参考名称,输出变量为加入了单元参考名称的单元特征向量。
2. <strong>svgidx</strong>:获得保存的变量的索引。 3.
<strong>svrget</strong>:获得单元保存的变量。 4.
<strong>mreuse</strong>:决定在迭代过程中哪些单元矩阵及向量可被重复使用,哪些单元矩阵及向量需要重新计算。
5. <strong>rvrget</strong>:获得单元实常数。 6.
<strong>propev</strong>:计算一组材料特性参数。 7.
<strong>prope1</strong>:计算某一个材料特性参数,若要计算多个材料参数,可使用
propev 子程序。 8. <strong>pstev1</strong>:计算 1
维单元的材料特性参数。 9.
<strong>plast1</strong>:更新单元塑性历史,用于具有一个应力(应变)分量的单元,包括
LINK1、LINK8、BEAM23、BEAM24 和 SOLID65(增强型)单元。 10.
<strong>plast3</strong>:更新单元塑性历史,用于具有 4 或 6
应力(应变)分量的单元,包括
PLANE02、PLANE13、PIPE20、SHELL43、SHELL51、PIPE60、SOLID62、SOLID65、SHELL91、SHELL93、SHELL143、SOLID191。
11. <strong>creep1</strong>:更新单元蠕变历史,用于 1 维单元,包括
LINK1、LINK8、BEAM23、BEAM24 和 SOLID65 单元。 12.
<strong>creep3</strong>:更新单元蠕变历史,用于 3 维单元,包括
PLANE02、PLANE13、PIPE20、PLANE42、SHELL43、SOLID45、SHELL51、PIPE60、SOLID62、SOLID65、PLANE82、SHELL91、SOLID92、SHELL93、SOLID95、SHELL143
及 SOLID191。 13. <strong>swell1</strong>:更新单元的膨胀历史,用于 1
维单元,包括 LINK1、LINK8、BEAM23、BEAM24。 14.
<strong>swell3</strong>:更新单元的膨胀历史,用于 3 维单元,包括
PLANE02、PLANE13、PIPE20、PLANE42、SHELL43、SOLID45、SHELL51、PIPE60、SOLID62、PLANE82、SHELL91、SOLID92、SHELL93、SOLID95、SHELL143
和 SOLID191。 15.
<strong>usereo</strong>:在不可累加杂项数据(NMISC)中存储数据。 16.
<strong>eldwrtL</strong>:将单元数据写入文件。 17.
<strong>eldwrnL</strong>:将单元不可累加杂项数据写入结果文件。 18.
<strong>tmpget</strong>:子程序 temget 用于定义当前温度载荷。 19.
<strong>prsget</strong>:定义当前压力载荷。 20.
<strong>cnvget</strong>:定义当前对流载荷。 21.
<strong>prinst</strong>:可用于计算主应力和应力强度。其输入输出输出变量只有一个
s(长度为 11 的数组),s(1)、s(2)、s(3)、s(4)、s(5) 和 s(6) 分别存放σx
、σy 、σz 、σxy 、σyz 和 σzx,经子程序计算后输出主应力σ1、σ2 和σ3 保存在
s(7)、s(8) 和 s(9) 内,应力强度保存在 s(10) 内,s(11) 内输出的是 Mises
等效应力。也可用来计算主应变(ε1 、ε2 和ε3
)的大小。提醒大家,这是一个很重要的子程序。</p>
<h2
id="修改和监视已存在单元的用户子程序">修改和监视已存在单元的用户子程序</h2>
<ol type="1">
<li><strong>userou</strong>:用于存储用户提供的单元输出,对于需要将单元数据存入
nmisc 记录的所有单元,都要调用该用户子程序。该子程序通过 USRCAL
命令激活:USRCAL,USEROU</li>
<li><strong>useran</strong>:单元坐标系控制,修改
shell43、shell63、shell91、shell93、shell99,以及
solid46、solid64、solid191
单元材料性能参数和应力的方向,可通过单元关键选项调用。</li>
<li><strong>userrc</strong>:对 COMBIN7 和 COMBIN37
单元的参数进行操作。当设置单元的 keyopt(9) = 1 时调用该子程序,且 C1 或
C3 必须为非零值。</li>
<li><strong>UElMatx</strong>:访问单元矩阵和载荷向量,如频域分析的载荷向量等。主要目的是监视(或修改)单元矩阵和载荷向量。</li>
<li><strong>UTHICK</strong>:定义 SHELL181、SHELL208、SHELL209 以及
SHELL281 单元的初始厚度。</li>
<li><strong>Us_Surf_Str</strong>:获取 PLANE2、PLANE42、PLANE82 以及
SOLID45、SOLID92 和 SOLOD95 单元的单元面应力。</li>
<li><strong>uflex</strong>:计算单元 PIPE288 和 PIPE289
的柔性系数。当输入单元的轴向柔性系数为 - 10 时调用该用户子程序。</li>
<li><strong>usflex</strong>:计算单元 PIPE16、PIPE17、PIPE18 和 PIPE60
的柔性系数。当输入单元的轴向柔性系数为负数时调用该用户子程序。</li>
</ol>
<h2 id="载荷用户子程序">载荷用户子程序</h2>
<p>以下用户子程序用于定义载荷: 1.
<strong>usrefl</strong>:可将一些标量表示的载荷(如温度、流量、热生成量、含水量等)修改成用户定义的值,该子程序在每个使用标量场载荷的载荷步及载荷子步内、每次平衡迭代过程中均会被调用,在进入该子程序之前,已获得
ANSYS 输入的单元或节点值信息。 2.
<strong>userpr</strong>:用于改变单元压力,该子程序在每个使用单元压力的载荷步及载荷子步内、每次平衡迭代过程中均会被调用,每个单元调用一次。在进入该子程序之前,已获得
ANSYS 输入的单元或节点值信息。 3.
<strong>usercv</strong>:用于改变单元面对流信息,该子程序在每个载荷步及载荷子步内的每次平衡迭代过程中均会被调用,每个单元调用一次。在进入该子程序之前,已获得标准
ANSYS
输入的对流面信息,因此利用这些信息可以随意按照用户意愿修改对流信息。 4.
<strong>userfx</strong>:用于改变单元面热流信息,该子程序在每个载荷步及载荷子步内的每次平衡迭代过程中均会被调用,每个单元调用一次。仅在热流载荷形成阶段调用,热流计算阶段不调用。</p>
<h2 id="计算干预用户子程序">计算干预用户子程序</h2>
<table>
<thead>
<tr class="header">
<th>用户子程序</th>
<th>对应的情况</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>UAnBeg</td>
<td>ANSYS 启动时执行</td>
</tr>
<tr class="even">
<td>USolBeg</td>
<td>求解开始前执行</td>
</tr>
<tr class="odd">
<td>ULdBeg</td>
<td>载荷步开始前执行</td>
</tr>
<tr class="even">
<td>USsBeg</td>
<td>载荷子步开始前执行</td>
</tr>
<tr class="odd">
<td>UItBeg</td>
<td>迭代步开始前执行</td>
</tr>
<tr class="even">
<td>UItFin</td>
<td>迭代步结束后执行</td>
</tr>
<tr class="odd">
<td>USsFin</td>
<td>载荷子步结束后执行</td>
</tr>
<tr class="even">
<td>ULdFin</td>
<td>载荷步结束后执行</td>
</tr>
<tr class="odd">
<td>USolFin</td>
<td>求解结束后执行</td>
</tr>
<tr class="even">
<td>UAnFin</td>
<td>ANSYS 结束前执行</td>
</tr>
</tbody>
</table>
<h2 id="访问-ansys-数据库的子程序">访问 ANSYS 数据库的子程序</h2>
<p>这部分内容包括选择或获得节点及单元的子程序、节点信息相关子程序、单元特征相关子程序、耦合及约束相关子程序、节点载荷子程序、单元载荷子程序、结果信息子程序,由于内容较多,参见附件:<a class="btn" href="https://file.pencilq.com/file_and_note/Access%20the%20ANSYS%20database%20subroutine.pdf"><i class="fa fa-download fa-lg fa-fw"></i>下载</a></p>
<div class="pdf-container" data-target="https://file.pencilq.com/file_and_note/Access%20the%20ANSYS%20database%20subroutine.pdf" data-height="500px"></div>
<h2 id="方便用户开发的子程序">方便用户开发的子程序</h2>
<p>内容包括通用子程序、向量操作子程序和矩阵操作子程序,见附件:<a class="btn" href="https://file.pencilq.com/file_and_note/User-friendly%20subroutine.pdf"><i class="fa fa-download fa-lg fa-fw"></i>下载</a></p>
<div class="pdf-container" data-target="https://file.pencilq.com/file_and_note/User-friendly%20subroutine.pdf" data-height="500px"></div>
<h2 id="简单例子-线弹性材料模型-usermat-开发">简单例子 线弹性材料模型
usermat 开发</h2>
<p>材料的本构行为体现为应力 - 应变关系,usermat
子程序的主要任务是定义材料的应力 -
应变关系,具体分为两个方面。首先由给定的应变增量计算得到应力增量
,从而得到新的应力 ,称做应力更新过程。其次还要求 usermat
给出雅可比矩阵,学名是一致切线算子矩阵。usermat 用户子程序仅用于最新技术单元,不支持传统单元。</p>
<h3 id="usermat-fortran-用户子程序的结构">usermat fortran
用户子程序的结构</h3>
<figure class="highlight fortran"><table><tr><td class="code"><pre><span class="line">*deck,usermat USERDISTRIB parallel gal</span><br><span class="line"><span class="function"><span class="keyword">subroutine</span></span> usermat(</span><br><span class="line"> & matId, elemId,kDomIntPt, kLayer, kSectPt,</span><br><span class="line"> & ldstep,isubst,keycut,</span><br><span class="line"> & nDirect,nShear,ncomp,nStatev,nProp,</span><br><span class="line"> & Time,dTime,Temp,dTemp,</span><br><span class="line"> & stress,statev,dsdePl,sedEl,sedPl,epseq,</span><br><span class="line"> & Strain,dStrain, epsPl, prop, coords,</span><br><span class="line"> & var0, defGrad_t, defGrad,</span><br><span class="line"> & tsstif, epsZZ,</span><br><span class="line"> & var1, var2, var3, var4, var5,</span><br><span class="line"> & var6, var7, var8)</span><br><span class="line">c*************************************************************************</span><br><span class="line">#<span class="keyword">include</span> <span class="string">"impcom.inc"</span></span><br><span class="line"><span class="comment">c</span></span><br><span class="line"> <span class="keyword">INTEGER</span> </span><br><span class="line"> & matId, elemId,</span><br><span class="line"> & kDomIntPt, kLayer, kSectPt,</span><br><span class="line"> & ldstep,isubst,keycut,</span><br><span class="line"> & nDirect,nShear,ncomp,nStatev,nProp</span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span></span><br><span class="line"> & Time, dTime, Temp, dTemp,</span><br><span class="line"> & sedEl, sedPl, epseq, epsZZ</span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span></span><br><span class="line"> & stress (ncomp), statev (nStatev),</span><br><span class="line"> & dsdePl (ncomp,ncomp),</span><br><span class="line"> & Strain (ncomp), dStrain (ncomp ),</span><br><span class="line"> & epsPl (ncomp), prop (nProp ),</span><br><span class="line"> & coords (<span class="number">3</span>), rotateM (<span class="number">3</span>,<span class="number">3</span>),</span><br><span class="line"> & defGrad (<span class="number">3</span>,<span class="number">3</span>), defGrad_t(<span class="number">3</span>,<span class="number">3</span>),</span><br><span class="line"> & tsstif (<span class="number">2</span>)</span><br><span class="line"><span class="comment">c</span></span><br><span class="line">c***************** 用户定义部分 *************************************</span><br><span class="line">c* *</span><br><span class="line">c* *</span><br><span class="line">c***************** 用户定义部分 *************************************</span><br><span class="line"><span class="keyword">return</span></span><br><span class="line"><span class="keyword">end</span></span><br></pre></td></tr></table></figure>
<h3 id="输入输出变量说明">输入输出变量说明</h3>
<p><strong>usermat 输入变量及其数据类型:</strong></p>
<ul>
<li><p>matId:材料号;整型。</p></li>
<li><p>elemId:单元号;整型。</p></li>
<li><p>kDomIntPt:材料积分点号;整型。</p></li>
<li><p>kLayer:单元层号,仅用于分层单元,用于 usermat 的 18x 族单元中仅
SHELL181 有分层功能;整型。</p></li>
<li><p>kSectPt:单元截面号;整型。</p></li>
<li><p>ldstep:载荷步数;整型。</p></li>
<li><p>isubst:载荷子步数;整型。</p></li>
<li><p>nDirect:正应力或正应变分量的个数,与单元类型有关;整型。</p></li>
<li><p>nShear:剪应力或剪应变分量的个数,与单元类型有关;整型。</p></li>
<li><p>ncomp:应力分量或应变分量个数,ncomp= nDirect +
nShear;整型。</p></li>
<li><p>nStatev:状态变量个数,通过 TB,STATE 命令定义;整型。</p></li>
<li><p>nProp:材料常数个数,通过 TB,USER 命令定义;整型。</p></li>
<li><p>Temp:增量步开始时的温度;双精度。</p></li>
<li><p>dTemp:增量步内的温度增量;双精度。</p></li>
<li><p>Time:增量步开始时的时间,但并非真正的时间,仅仅是计算过程的标记;双精度。</p></li>
<li><p>dTime:增量步内的时间增量;双精度。</p></li>
<li><p>Strain(ncomp):增量步开始时的应变分量,包括机械应变及温度应变两部分;双精度数组。</p></li>
<li><p>dStrain(ncomp):应变增量,仅包含机械应变,温度应变成分已被去除;双精度数组。</p></li>
<li><p>prop(nProp):材料常数数组,由 TB,USER 及 TB,DATA
命令定义,可定义不同温度下的材料常数;双精度数组。</p></li>
<li><p>coords(3):当前材料积分点的坐标;双精度数组。</p></li>
<li><p>rotateM(3,3):大变形分析(NLGEOM,ON)时考虑刚体转动用到的增量型旋转矩阵,小变形分析时为单位矩阵;双精度矩阵。该矩阵老版本中存在,现已被废除(本贴第七部分提供了计算转动矩阵
R 的代码)。</p></li>
<li><p>defGrad_t(3,3):增量步开始时的变形梯度矩阵;双精度矩阵。</p></li>
<li><p>defGrad(3,3):增量步结束时的变形梯度矩阵;双精度矩阵。</p></li>
</ul>
<p><strong>usermat 输出变量及其数据类型:</strong></p>
<ul>
<li><p>keycut:载荷切分控制参数,0—不切分,1—切分,默认情况下不进行载荷切分,当
ANSYS 主程序检测到收敛困难时进行载荷切分,并输出
keycut=1;整型。</p></li>
<li><p>epsZZ:平面应力状态时垂直于平面方向的应变,仅在平面单元或壳单元考虑厚度变化时使用;双精度。</p></li>
<li><p>tsstif
(2):横观剪切刚度,tssif(1)-GXZ,tssif(2)-GYZ;双精度数组。</p></li>
<li><p>dsdePl(ncomp,ncomp):一致切线算子矩阵,dsdePl(i,j)
表示增量步结束时由第 j 个应变分量的改变引起的第 i
个应力分量的变化。ANSYS
默认一致切线算子矩阵是对称的,若要使用非对称的一致切线算子矩阵(对于采用非关联流动法则的塑性材料模型,一致切线算子矩阵往往是非对称的),需要使用
NROP,UNSYM 命令打开非对称求解器;双精度矩阵。</p></li>
</ul>
<p><strong>usermat 输入输出变量及其数据类型:</strong></p>
<ul>
<li><p>stress(ncomp):应力分量,增量步开始时由 ANSYS 主程序传入,需要在
usermat 中更新为增量步结束时的值;双精度数组。</p></li>
<li><p>statev(nStatev):状态变量,用于存储与材料模型有关的变量,如塑性因子、强化参数、损伤变量等,增量步开始时由
ANSYS 主程序传入,需要在 usermat
中更新为增量步结束时的值;双精度数组。</p></li>
<li><p>epsPl(ncomp):塑性应变分量,增量步开始时由 ANSYS
主程序传入,需要在 usermat
中更新为增量步结束时的值;双精度数组。</p></li>
<li><p>sedEl:弹性功,仅用于后处理,对计算过程无影响;双精度。</p></li>
<li><p>sedPl:塑性功,仅用于后处理,对计算过程无影响;双精度</p></li>
<li><p>epsep:等效塑性应变</p></li>
</ul>
<h3 id="apdl-命令自定义材料模型">APDL 命令自定义材料模型</h3>
<p>通过 APDL
命令很容易使用自定义材料模型。只需在前处理部分使用下列语句即可:
<code>TB, USER, matId, NTEMPS, NPTS</code> 关键字 USER
表示使用用户定义材料模型;关键字 matId 表示材料号;NTEMPS
为温度点的个数,即可定义不同温度下的多组材料常数;NPTS
表示每一温度下材料常数个数</p>
<h3 id="线弹性本构-usermat">线弹性本构 usermat</h3>
<p><span class="math display">\[
\begin{aligned}
\bf{\sigma} & = \bf{D}_e \bf{\varepsilon}\\
\bf{\sigma} & = \left[ {\sigma_x \; \sigma_y \; \sigma_z \;
\sigma_{xy} \; \sigma_{yz} \; \sigma_{xz}} \right]^T \\
\bf{\varepsilon} & = \left[ {\varepsilon_x \; \varepsilon_y \;
\varepsilon_z \; \varepsilon_{xy} \; \varepsilon_{yz} \;
\varepsilon_{xz}} \right]^T \\
\\
\bf{D}_e & = \left[ {\begin{array}{*{20}{c}}
{\lambda + 2G}&\lambda &\lambda &0&0&0\\
\lambda &{\lambda + 2G}&\lambda &0&0&0\\
\lambda &\lambda &{\lambda + 2G}&0&0&0\\
0&0&0&G&0&0\\
0&0&0&0&G&0\\
0&0&0&0&0&G
\end{array}} \right]
\end{aligned}
\]</span></p>
<blockquote>
<p>以下是线弹性本构的<code>usermat</code>源代码及测试用的命令流。代码格式显示可能有误,仅供参考。<a class="btn" href="https://file.pencilq.com/file_and_note/elastic.rar"><i class="fa fa-download fa-lg fa-fw"></i>下载源文件</a></p>
</blockquote>
<h3 id="usermat.f">usermat.F</h3>
<figure class="highlight fortran"><table><tr><td class="code"><pre><span class="line">*deck,usermat USERDISTRIB parallel gal</span><br><span class="line"> <span class="function"><span class="keyword">subroutine</span></span> usermat(</span><br><span class="line"> & matId, elemId,kDomIntPt, kLayer, kSectPt,</span><br><span class="line"> & ldstep,isubst,keycut,</span><br><span class="line"> & nDirect,nShear,ncomp,nStatev,nProp,</span><br><span class="line"> & Time,dTime,Temp,dTemp,</span><br><span class="line"> & stress,statev,dsdePl,sedEl,sedPl,epseq,</span><br><span class="line"> & Strain,dStrain, epsPl, prop, coords, </span><br><span class="line"> & var0, defGrad_t, defGrad,</span><br><span class="line"> & tsstif, epsZZ,</span><br><span class="line"> & var1, var2, var3, var4, var5,</span><br><span class="line"> & var6, var7, var8)</span><br><span class="line">c*************************************************************************</span><br><span class="line"></span><br><span class="line">#<span class="keyword">include</span> <span class="string">"impcom.inc"</span></span><br><span class="line"><span class="comment">c</span></span><br><span class="line"> <span class="keyword">INTEGER</span> </span><br><span class="line"> & matId, elemId,</span><br><span class="line"> & kDomIntPt, kLayer, kSectPt,</span><br><span class="line"> & ldstep,isubst,keycut,</span><br><span class="line"> & nDirect,nShear,ncomp,nStatev,nProp</span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span> </span><br><span class="line"> & Time, dTime, Temp, dTemp,</span><br><span class="line"> & sedEl, sedPl, epseq, epsZZ</span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span> </span><br><span class="line"> & stress (ncomp ), statev (nStatev),</span><br><span class="line"> & dsdePl (ncomp,ncomp),</span><br><span class="line"> & Strain (ncomp ), dStrain (ncomp ), </span><br><span class="line"> & epsPl (ncomp ), prop (nProp ), </span><br><span class="line"> & coords (<span class="number">3</span>), rotateM (<span class="number">3</span>,<span class="number">3</span>),</span><br><span class="line"> & defGrad (<span class="number">3</span>,<span class="number">3</span>), defGrad_t(<span class="number">3</span>,<span class="number">3</span>),</span><br><span class="line"> & tsstif (<span class="number">2</span>)</span><br><span class="line"><span class="comment">c</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span> var0, var1, var2, var3, var4, var5,</span><br><span class="line"> & var6, var7, var8</span><br><span class="line"> </span><br><span class="line"><span class="comment">c</span></span><br><span class="line">c************************用户定义部分*************************************</span><br><span class="line"><span class="comment">c </span></span><br><span class="line"> <span class="keyword">INTEGER</span> K1, K2</span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span> ONE, TWO</span><br><span class="line"> <span class="keyword">PARAMETER</span> (ONE=<span class="number">1.0D0</span>, TWO=<span class="number">2.0D0</span>)</span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span> EMOD, ENU, EG, EG2, ELAM</span><br><span class="line"> <span class="keyword">DOUBLE</span> <span class="keyword">PRECISION</span> SesSrn(<span class="number">6</span>,<span class="number">6</span>)</span><br><span class="line"><span class="comment">C</span></span><br><span class="line"><span class="comment">C 相关弹性常数</span></span><br><span class="line"><span class="comment">C</span></span><br><span class="line"> EMOD = prop(<span class="number">1</span>)</span><br><span class="line"> ENU = prop(<span class="number">2</span>)</span><br><span class="line"> EG = EMOD/(TWO*(ONE+ENU))</span><br><span class="line"> EG2 = TWO*EG</span><br><span class="line"> ELAM=EMOD*ENU/(ONE+ENU)/(ONE-TWO*ENU)</span><br><span class="line"> <span class="keyword">DO</span> K1=<span class="number">1</span>,<span class="number">6</span></span><br><span class="line"> <span class="keyword">DO</span> K2=<span class="number">1</span>,<span class="number">6</span></span><br><span class="line"> SesSrn(K1,K2)=<span class="number">0.0D0</span></span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"> </span><br><span class="line"><span class="comment">C</span></span><br><span class="line"><span class="comment">C 获得应力应变矩阵</span></span><br><span class="line"><span class="comment">C</span></span><br><span class="line"> <span class="keyword">DO</span> K1=<span class="number">1</span>, <span class="number">3</span></span><br><span class="line"> <span class="keyword">DO</span> K2=<span class="number">1</span>, <span class="number">3</span></span><br><span class="line"> SesSrn(K2, K1)=ELAM</span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"> SesSrn(K1, K1)=EG2+ELAM</span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"> <span class="keyword">DO</span> K1=<span class="number">4</span>, <span class="number">6</span></span><br><span class="line"> SesSrn(K1 ,K1)=EG</span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line">c </span><br><span class="line"><span class="comment">C 更新应力</span></span><br><span class="line"><span class="comment">C</span></span><br><span class="line"> <span class="keyword">DO</span> K1=<span class="number">1</span>, <span class="number">6</span></span><br><span class="line"> <span class="keyword">DO</span> K2=<span class="number">1</span>, <span class="number">6</span></span><br><span class="line"> stress(K2)=stress(K2)+SesSrn(K2, K1)*dStrain(K1)</span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"><span class="comment">c</span></span><br><span class="line">c一致切线算子矩阵</span><br><span class="line"><span class="comment">c</span></span><br><span class="line"> <span class="keyword">DO</span> K1=<span class="number">1</span>,<span class="number">6</span></span><br><span class="line"> <span class="keyword">DO</span> K2=<span class="number">1</span>,<span class="number">6</span></span><br><span class="line"> dsdePl(K1,K2)=SesSrn(K1,K2)</span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"> <span class="keyword">END</span> <span class="keyword">DO</span></span><br><span class="line"><span class="comment">c</span></span><br><span class="line"> </span><br><span class="line"> <span class="keyword">return</span></span><br><span class="line"> <span class="keyword">end</span></span><br></pre></td></tr></table></figure>
<h3 id="uniaxial-tension_ansys.inp">uniaxial tension_ANSYS.inp</h3>
<figure class="highlight js"><table><tr><td class="code"><pre><span class="line">!<span class="variable constant_">ANSYS</span>自带线弹性材料——单轴拉伸</span><br><span class="line">finish</span><br><span class="line">/clear</span><br><span class="line">/prep7</span><br><span class="line"></span><br><span class="line">!单元类型</span><br><span class="line">et,<span class="number">1</span>,<span class="number">45</span></span><br><span class="line"></span><br><span class="line">!设置弹性模量及泊松比</span><br><span class="line">ex,<span class="number">1</span>,<span class="number">180e9</span></span><br><span class="line">prxy,<span class="number">1</span>,<span class="number">0.3</span> </span><br><span class="line"></span><br><span class="line">!调整视角</span><br><span class="line">/view,<span class="number">1</span>,-<span class="number">1</span></span><br><span class="line">/ang,<span class="number">1</span> </span><br><span class="line"></span><br><span class="line">!建立几何模型</span><br><span class="line">cyl4,<span class="number">0</span>,<span class="number">0</span>,<span class="number">0.005</span>, , , ,<span class="number">0.1</span> </span><br><span class="line"></span><br><span class="line">!网格划分</span><br><span class="line">lsel, s , , , <span class="number">1</span>, <span class="number">8</span></span><br><span class="line">lesize, all, , ,<span class="number">4</span></span><br><span class="line">allsel,all</span><br><span class="line">lsel, s , , , <span class="number">9</span>, <span class="number">10</span></span><br><span class="line">lesize, all, , ,<span class="number">20</span></span><br><span class="line">allsel,all</span><br><span class="line">vsweep, <span class="number">1</span>, <span class="number">1</span>, <span class="number">2</span>, <span class="number">0</span> !进行扫略网格划分</span><br><span class="line"></span><br><span class="line">!设置边界条件</span><br><span class="line">da, <span class="number">1</span>, all !约束其中一个端面</span><br><span class="line">!施加外载荷</span><br><span class="line">sfa, <span class="number">2</span>, <span class="number">1</span>, pres, -<span class="number">200e6</span> !钢棒另一端面施加拉伸载荷</span><br><span class="line">finish</span><br><span class="line"></span><br><span class="line">/solu !进入求解器</span><br><span class="line">solve </span><br><span class="line"></span><br><span class="line">/post1 !进入后处理器</span><br><span class="line">pldisp, <span class="number">1</span> !变形图</span><br></pre></td></tr></table></figure>
<h3 id="uniaxial-tension_user.inp">uniaxial tension_user.inp</h3>
<figure class="highlight js"><table><tr><td class="code"><pre><span class="line">!用户自定义线弹性材料——单轴拉伸</span><br><span class="line">finish</span><br><span class="line">/clear</span><br><span class="line">/prep7</span><br><span class="line"></span><br><span class="line">!单元类型</span><br><span class="line">et,<span class="number">1</span>,<span class="number">185</span></span><br><span class="line"></span><br><span class="line">!选择用户自定义材料类型</span><br><span class="line">tb,user,<span class="number">1</span>,<span class="number">1</span>,<span class="number">2</span></span><br><span class="line">tbdata,<span class="number">1</span>,<span class="number">180e9</span>,<span class="number">0.3</span> !给弹性模量及泊松比赋值</span><br><span class="line"></span><br><span class="line">!调整视角</span><br><span class="line">/view,<span class="number">1</span>,-<span class="number">1</span></span><br><span class="line">/ang,<span class="number">1</span> </span><br><span class="line"></span><br><span class="line">!建立几何模型</span><br><span class="line">cyl4,<span class="number">0</span>,<span class="number">0</span>,<span class="number">0.005</span>, , , ,<span class="number">0.1</span></span><br><span class="line"></span><br><span class="line">!网格划分</span><br><span class="line">lsel, s , , , <span class="number">1</span>, <span class="number">8</span></span><br><span class="line">lesize, all, , ,<span class="number">4</span></span><br><span class="line">allsel,all</span><br><span class="line">lsel, s , , , <span class="number">9</span>, <span class="number">10</span></span><br><span class="line">lesize, all, , ,<span class="number">20</span></span><br><span class="line">allsel,all</span><br><span class="line">vsweep, <span class="number">1</span>, <span class="number">1</span>, <span class="number">2</span>, <span class="number">0</span> !进行扫略网格划分</span><br><span class="line"></span><br><span class="line">!设置边界条件</span><br><span class="line">da, <span class="number">1</span>, all !约束其中一个端面</span><br><span class="line"></span><br><span class="line">!施加外载荷</span><br><span class="line">sfa, <span class="number">2</span>, <span class="number">1</span>, pres, -<span class="number">200e6</span> !钢棒另一端面施加拉伸载荷</span><br><span class="line">finish</span><br><span class="line"></span><br><span class="line">/solu !进入求解器</span><br><span class="line">time,<span class="number">1</span></span><br><span class="line">pred,on !打开线性预测</span><br><span class="line">nsubst,<span class="number">10</span>,<span class="number">50</span>,<span class="number">5</span> !定义载荷子步数</span><br><span class="line">outres,all,all !输出所有子步结果</span><br><span class="line">solve</span><br><span class="line"></span><br><span class="line">/post1 !进入后处理器</span><br><span class="line">pldisp, <span class="number">1</span> !变形图</span><br><span class="line"></span><br></pre></td></tr></table></figure>
<h2 id="usermat-的参考文档">usermat 的参考文档</h2>
<a class="btn" href="http://ansys.net/ansys/papers/nonlinear/usermat.pdf "><i class="fa fa-download fa-lg fa-fw"></i>下载</a>
]]></content>
</entry>
<entry>
<title>Ansys 二次开发系列之一:ANSYS15-0-Win764位安装及UPFs二次开发环境设置</title>
<url>//19/</url>
<content><![CDATA[<blockquote>
<p><strong>转自仿真科技论坛</strong>,<a
href="http://forum.simwe.com/thread-1021888-1-1.html">点击进入原网址,作者师访</a></p>
</blockquote>
<p>本部分给出Win7系统下UPFs二次开发环境设置方法。本部分所提供的方法仅用于个人研究学习,商业用途请购买正版软件,并按照软件商提供的方法操作。
<span id="more"></span> ## 1. 相关环境及软件</p>
<ol type="1">
<li>本文操作系统 win7_64bit</li>
<li>64位ANSYS15.0</li>
<li>Visual Studio 2010</li>
<li>Intel Fortran Composer XE 2013 SP1</li>
</ol>
<h2 id="软件的安装">2. 软件的安装</h2>
<blockquote>
<p>(可参考帖子:http://forum.simwe.com/thread-1094988-1-1.html,建议安装在D盘)</p>
</blockquote>
<ol type="1">
<li>安装<code>ansys</code>,将ANSYS15.0安装在D盘。 <a
href="http://forum.simwe.com/forum.php?mod=attachment&aid=NDM3ODkyfDA0Y2NkNzJmfDE1MzE0NDQ4MTd8NzgzMjAxfDEwMjE4ODg%3D">ansys15.0种子</a>
,破解文件 <a
href="http://forum.simwe.com/forum.php?mod=attachment&aid=NDM3ODkxfGNmYzc1NjQxfDE1MzE0NDQ4MTd8NzgzMjAxfDEwMjE4ODg%3D">ansys_crack</a></li>
</ol>
<p>安装方法如下(注意安装过程中别忘了选择安装<strong>customalize文件夹</strong>):
<img
src="https://image.pencilq.com/images/2019/05/02/006tNbRwgy1fukikzwp9ej30g903cglm.jpg" /></p>
<p> <strong>Step 1</strong> If you have installed an earlier version of
ANSYS, please make sure to uninstall it, the ANSYS License Manager in
especial (This can be done by deleting the"IncFiles" folder, if it can
not be deleted,then end the related processes in the task manager and
try again!).</p>
<p> <strong>Step 2</strong> Install only ANSYS products on disk D, do
not install ANSYS License Manager. <strong>When askfor Hostname
1</strong>, just select <strong>Skip this configuration!</strong></p>
<p> <strong>Step 3</strong> After installation, Put
<strong>ansyslmd.ini</strong> and license.dat into the
followingdirectory:<br />
<code>D:\Program Files\ANSYS Inc\SharedFiles\Licensing\</code> Modify
thesecond line of the <strong>ansyslmd.ini</strong> into the following
line:
<code>LICKEYFIL=D:\Program Files\ANSYS Inc\SharedFiles\Licensing\license.dat</code></p>
<ol type="1">
<li>安装 Visual Studio 2010,下载地址:百度网盘,<a
href="http://pan.baidu.com/s/1ntjr3dB"
class="uri">http://pan.baidu.com/s/1ntjr3dB</a>。安装在 C
盘,默认安装设置。安装完成后<strong>切勿进行关于 Visual Studio
2010的Windows Update 更新</strong>。</li>
<li>安装Intel Fortran Composer XE 2013 SP1,下载地址:百度网盘,<a
href="http://pan.baidu.com/s/1hq88u2K"
class="uri">http://pan.baidu.com/s/1hq88u2K</a>。安装在C盘,默认安装设置。</li>
</ol>
<h2 id="系统环境变量的设置">3. 系统环境变量的设置</h2>
<blockquote>
<p>这是本文安装环境的环境变量,按照本文安装方式,以下环境变量直接添加即可。(win10、win7
)</p>
</blockquote>
<ol type="1">
<li><p>Path 环境变量用如下path
环境变量替换(每一行表示一条环境变量,各条环境变量之间用分号(;)隔开),以下环境变量基于本文安装路径,若安装路径不同,请进行相关调整:</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">%INTEL_DEV_REDIST%redist\intel64\mpirt</span><br><span class="line">%INTEL_DEV_REDIST%redist\intel64\compiler</span><br><span class="line">%INTEL_DEV_REDIST%redist\ia32\mpirt</span><br><span class="line">%INTEL_DEV_REDIST%redist\ia32\compiler</span><br><span class="line">%SystemRoot%\system32</span><br><span class="line">%SystemRoot%</span><br><span class="line">%SystemRoot%\System32\Wbem</span><br><span class="line">%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\</span><br><span class="line">C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x86</span><br><span class="line">C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x64</span><br><span class="line">C:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\</span><br><span class="line">C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin</span><br><span class="line">C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin</span><br><span class="line">C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin</span><br><span class="line">c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\</span><br><span class="line">c:\Program Files\Microsoft SQL Server\100\Tools\Binn\</span><br><span class="line">c:\Program Files\Microsoft SQL Server\100\DTS\Binn\</span><br><span class="line">C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE</span><br></pre></td></tr></table></figure>
<p>可直接复制以下内容粘贴: <figure class="highlight plaintext"><table><tr><td class="code"><pre><span class="line">%INTEL_DEV_REDIST%redist\intel64\mpirt;%INTEL_DEV_REDIST%redist\intel64\compiler;%INTEL_DEV_REDIST%redist\ia32\mpirt;%INTEL_DEV_REDIST%redist\ia32\compiler;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x64;C:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE</span><br></pre></td></tr></table></figure></p></li>
<li><p>新增 <strong>Lib</strong> 环境变量:</p>
<figure class="highlight plaintext"><table><tr><td class="code"><pre><span class="line">C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib\x64;</span><br><span class="line">C:\Program Files (x86)\Intel\Composer XE 2013 SP1\compiler\lib\intel64;</span><br><span class="line">C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\amd64</span><br></pre></td></tr></table></figure>
<p>可直接复制以下内容粘贴:</p>
<figure class="highlight plaintext"><table><tr><td class="code"><pre><span class="line">C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib\x64;C:\Program Files (x86)\Intel\Composer XE 2013 SP1\compiler\lib\intel64;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\amd64</span><br></pre></td></tr></table></figure></li>
<li><p>新增 <strong>Include</strong> 环境变量:</p>
<figure class="highlight plaintext"><table><tr><td class="code"><pre><span class="line">C:\Program Files (x86)\Intel\Composer XE 2013 SP1\compiler\include\intel64;</span><br><span class="line">C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include;</span><br><span class="line">C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include</span><br></pre></td></tr></table></figure>
<p>可直接复制以下内容粘贴:</p>
<figure class="highlight plaintext"><table><tr><td class="code"><pre><span class="line">C:\Program Files (x86)\Intel\Composer XE 2013 SP1\compiler\include\intel64;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include</span><br></pre></td></tr></table></figure></li>
</ol>
<h2 id="修改-anscust.bat-文件">4. 修改 ANSCUST.BAT 文件</h2>
<p>本步骤不是必须步骤,但为了保证成功编译,需要将编译文件夹
<code>D:\ProgramFiles\ANSYS Inc\v150\ansys\custom\user\winx64</code>下的
<code>ANSCUST.BAT</code> 的第<strong>28</strong>行由:</p>
<p>
<code>call "%IFORT_COMPILER12%\bin\compilervars.bat" %IFORT_PLATFORM% vs2010</code>
改为:
<code>call "C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin\compilervars.bat" %IFORT_PLATFORM% vs2010</code></p>
<h2 id="编译连接注意事项">5. 编译连接注意事项</h2>
<ul>
<li><p>复制<code>D:\ProgramFiles\ANSYS Inc\v150\ansys\custom\user\winx64</code>
文件夹中的文件<code>ANSCUST.BAT</code>、<code>ansys.lrf</code>、<code>ansysex.def</code>,与用户编写的程序(包含<code>xxx.F</code>)放在一个文件夹下,注意路径应为全英文,运行批处理文件<code>ANSCUST.BAT</code>进行编译。</p></li>
<li><p>当编译程序询问 Do you want to link the Wind Turbine
Aeroelasticlibrary with Mechanical APDL? (Y or N):
时,输入<strong>Y</strong>。编译连接完成后,将出现 “LINK WASSUCCESSFUL!”
的提示。最后,当编译程序询问 Do you want to copythe runtime DLLs? (Y or
N): ,在第一次编译时需要输入<strong>Y</strong>,程序将自动把 ansys.exe
运行所需的 <code>D:\Program Files\ANSYS Inc\v150\ansys\bin\winx64</code>
下的dll动态链接库文件拷贝到编译目录下,以后的编译过程中无需再次拷贝。</p></li>
<li><p>编译完成后,运行运行生成的 <code>ANSYS.exe</code>,出现 This
ANSYS was linked by License 即为成功编译。 <img
src="https://image.pencilq.com/images/2019/08/31/link-license.jpg" /></p></li>
</ul>
<h2 id="安装设置失败的解决办法">6. 安装设置失败的解决办法!!!</h2>
<ol type="1">
<li><p><strong>初次运行</strong> <code>ANSYS.exe</code> 会出现找不到
<code>*dll</code>
文件等问题。原因:环境变量设置问题。解决办法:在计算机中搜索该文件,将其路径添加到path环境变量,若不起作用,直接将其拷贝到编译路径下。(文件搜索推荐
everything,<a
href="https://en.softonic.com/download/everything/windows/post-download?sl=1#">下载地址:</a>https://en.softonic.com/download/everything/windows/post-download?sl=1#)</p></li>
<li><p>拒绝访问,无法连接到ANSYS等问题。将
<code>D:\ProgramFiles\ANSYS Inc\v150\ansys\custom\user\winx64</code>
文件夹拷贝到其它地方(比如 C 盘或 D 盘根目录),再单击其中的 ANSCUST.BAT
即可。</p></li>
<li><p>提示”转换到coff期间失败“。原因:系统中存在多个不同版本的
cvtres.exe
文件从而产生冲突。共有4个解决方案(优先尝试解决方案1和方案2)。</p>
<p><strong>解决方案1</strong>:<code>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin</code>
和<code>C:\Windows\Microsoft.NET\Framework\v4.0.30319</code>
这两个文件夹里 的 cvtres.exe 冲突,删除前者。</p>
<p><strong>解决方案2</strong>:搜索c盘下的cvtres.exe文件,仅保留
<code>C:\Windows\Microsoft.NET\Framework64\v4.0.30319</code>
下的cvtres.exe,其余搜到的cvtres.exe全部删除!</p>
<p><strong>解决方案3</strong>:重装系统,安装Win7官方原版镜像,ANSYS安装时仅仅选择二次开发必要的组件,即:
<img
src="https://image.pencilq.com/images/2019/08/31/ansys-install.jpg" />
<strong>解决方案4</strong>:直接将 Win7 升级到 Win10 可解决该问题。</p>
<hr /></li>
</ol>
]]></content>
<tags>
<tag>软件</tag>
<tag>ANSYS</tag>
<tag>二次开发</tag>
</tags>
</entry>
<entry>
<title>SciHub: 桌面版介绍及使用</title>
<url>//2/</url>
<content><![CDATA[<blockquote>
<p><strong>前言</strong>:谷歌学术镜像,SciHub 镜像及桌面版使用</p>
</blockquote>
<span id="more"></span>
<blockquote>
<p>推荐 <a href="http://www.4243.net/">大木虫学术导航</a></p>
</blockquote>
<h2 id="sci-hub-科研论文全文下载可用网址---自动更新">sci-hub
科研论文全文下载可用网址 - 自动更新:</h2>
<p><a
href="http://tool.yovisun.com/scihub/">http://tool.yovisun.com/scihub/</a></p>
<h2 id="scihub-desktop">SciHub Desktop:</h2>
<p>官方主页:<a
href="https://zhuanlan.zhihu.com/p/31809890">https://zhuanlan.zhihu.com/p/31809890</a>
百度云链接:<a
href="https://pan.baidu.com/s/1kVb2pJh">https://pan.baidu.com/s/1kVb2pJh</a></p>
<p><br> ## 谷歌学术镜像与 SciHub Desktop 简单使用说明</p>
<h4 id="打开谷歌学术镜像-httpac.scmor.com-随意挑一个可用的网址">打开<a
href="http://ac.scmor.com/">谷歌学术镜像</a>
<code>http://ac.scmor.com/</code> , 随意挑一个可用的网址。</h4>
<p><img
src="https://image.pencilq.com/images/2019/08/31/5cc7044c47a8b.png" /></p>
<h4 id="搜索获取复制-doi">搜索,获取复制 DOI</h4>
<p><img
src="https://image.pencilq.com/images/2019/08/31/5cc70456b1194.png" /></p>
<p><img
src="https://image.pencilq.com/images/2019/08/31/5cc7045d84602.png" /></p>
<p><img
src="https://image.pencilq.com/images/2019/08/31/5cc704641bce2.png" /></p>
<h4
id="在-scihub-desktop-中输入doi点击-fetch-pdf会自动弹出浏览器进行下载一次不行多点几次">在
scihub-desktop 中输入doi,点击 Fetch
PDF,会自动弹出浏览器进行下载。一次不行多点几次</h4>
<p><img
src="https://image.pencilq.com/images/2019/08/31/5cc7046c4eb16.png" /></p>
<blockquote>
<p>SciHub Desktop <a
href="https://pan.baidu.com/s/1kVb2pJh">官方百度云链接</a></p>
</blockquote>
<hr />
]]></content>
<tags>
<tag>软件</tag>
</tags>
</entry>
<entry>
<title>Abaqus: 生成泰森多边形</title>
<url>//20/</url>
<content><![CDATA[<blockquote>
<p><strong>前言</strong>: <code>Abaqus</code> 插件
<code>Homtools</code> 安装步骤以及相关功能的使用。
技术邻上居然有人高价出售 <code>Homtools</code>
这一款<strong>免费</strong>的插件。此处是<a
href="http://homtools.lma.cnrs-mrs.fr/spip/">插件官网</a></p>
</blockquote>
<span id="more"></span>
<p><img
src="https://image.pencilq.com/images/2019/05/02/img20180922234936.png" /></p>
<h2 id="abaqus-插件-homtools-安装步骤">Abaqus 插件 Homtools
安装步骤</h2>
<p>打开插件主页:<a
href="http://homtools.lma.cnrs-mrs.fr/spip/">http://homtools.lma.cnrs-mrs.fr/spip/</a></p>
<p>进入下载页面下载之后,解压文件。</p>
<ol type="1">
<li>用代码查看软件/记事本打开<code>abaqus_v6.env</code>,
abaqus_v6.env文件路径:
<code>\Dassault Systemes\SimulationServices\V6R2016x\win_b64\SMA\site\abaqus_v6.env</code></li>
<li>复制 <code>Homtools</code>
解压后的文件夹路径,例如:<code>D:\SIMULIA\plugin\homtools0.9</code></li>
<li>将 <code>plugin_central_dir = "/path/to/homtools/dir"</code>
这句代码,加到<code>abaqus_v6.env</code>文件的首行,
并将等号后面的目录替换为 Homtools 文件夹的目录。例如:
<code>plugin_central_dir = "/path/to/homtools/dir"</code>目录替换成
<code>plugin_central_dir = "D:\SIMULIA\plugin\homtools0.9"</code> <img
src="https://image.pencilq.com/images/2019/05/02/5cc703bff0234.png" />
---</li>
</ol>
<h2 id="homtools-rve-generation-功能使用步骤">Homtools <em>RVE
generation</em> 功能使用步骤</h2>
<ol type="1">
<li><p>打开CAE→在 Part 模块下→点击主菜单 Plug-ins → Homtools → Voronoi
cells <img
src="https://image.pencilq.com/images/2019/05/02/5cc703d37fb63.png" /></p></li>
<li><p>插件界面 <img
src="https://image.pencilq.com/images/2019/05/02/5cc703dd8a4af.png" /></p></li>
<li><p>生成晶格 <img
src="https://image.pencilq.com/images/2019/05/02/5cc703e58265f.png" /></p></li>
<li><p>晶界示意图 <img
src="https://image.pencilq.com/images/2019/05/02/5cc703eeb82ec.png" /></p></li>
<li><p>相同参数的情况下,再生成一个,可以看到生成的晶格是随机的。 <img
src="https://image.pencilq.com/images/2019/05/02/5cc703f8dfe19.png" /></p></li>
</ol>
<p><img
src="https://image.pencilq.com/images/2019/05/02/5cc704120aed2.gif" /></p>
<hr />
]]></content>
<tags>
<tag>二次开发</tag>
<tag>ABAQUS</tag>
</tags>
</entry>
<entry>
<title>阿里云 Centos 7.3 安装 Jupyter Notebook</title>
<url>//21/</url>
<content><![CDATA[<h2 id="安装步骤">安装步骤</h2>
<ol type="1">
<li><a
href="https://www.jianshu.com/p/fff4a61dee7a">安装过程</a>,安装最新版本</li>
<li> 对于新版本 5.3.0 还需要额外开启
<code>allow_remote_access</code> 的选项才可以正常进行远程访问</li>
<li>对于需要 <code>--allow-root</code> 的问题,开启
<code>c.NotebookApp.allow_root = True</code> 即可,<a
href="https://tuxianchao.github.io/post/%E5%9C%A8%E9%98%BF%E9%87%8C%E4%BA%91centos7%E8%A3%85%E4%B8%AAjupyter/">参考</a>
<span id="more"></span></li>
<li>使用时发现没有安装 <code>numpy</code> 这些常用包,运行
<code>conda update anaconda</code> 报错,<a
href="https://support.anaconda.com/customer/en/portal/articles/2797011-updating-anaconda-to-python-3-6">查询文档</a>,运行 <code>conda install anaconda</code> 即可。</li>
</ol>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">PackageNotInstalledError: Package is not installed <span class="keyword">in</span> prefix.</span><br><span class="line"> package name: anaconda</span><br></pre></td></tr></table></figure>
<ul>
<li>别忘了 <code>conda activate jupyter_notebook</code></li>
</ul>
<h2 id="安装插件">安装插件</h2>
<ol type="1">
<li>安装完需要重启 <code>jupyter notebook</code></li>
</ol>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install</span><br></pre></td></tr></table></figure>
<ol start="2" type="1">
<li><p> 相关插件 <a href="https://www.jishuwen.com/d/2Clq">参考</a> >
如果出现 <code>autopep8 module not found error</code>,运行
<code>pip install autopep8 --user</code>,<a
href="https://github.com/ipython-contrib/jupyter_contrib_nbextensions/issues/1300">参考</a></p></li>
<li><p>安装 <code>Cpython</code> ,<a
href="https://zhuanlan.zhihu.com/p/33696082">参考</a></p></li>
</ol>
<h2 id="界面优化">界面优化</h2>
<ol type="1">
<li><a
href="https://github.com/merqurio/jupyter_themes">推荐 </a>(可以随心更换高亮主题,代码字体)</li>
<li>安装主题(不习惯,对移动端不友好)</li>
</ol>
<figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="comment"># install jupyterthemes</span></span><br><span class="line">pip install jupyterthemes</span><br><span class="line"></span><br><span class="line"><span class="comment"># upgrade to latest version</span></span><br><span class="line">pip install --upgrade jupyterthemes</span><br><span class="line"></span><br><span class="line">jt -t grade3 -f roboto -nf robotosans -tf robotosans -N -T -cellw <span class="number">70</span>% -dfs <span class="number">10</span> -ofs <span class="number">10</span></span><br></pre></td></tr></table></figure>
<ol start="3" type="1">
<li><a
href="https://blog.csdn.net/qq_30565883/article/details/79444750">配置分享</a></li>
<li>其它 <a
href="https://www.zhihu.com/question/266988943/answer/632279672">参考</a></li>
</ol>
<hr />
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">jt -t oceans16 -f fira -fs 13 -cellw 90% -ofs 11 -dfs 11 -T</span><br></pre></td></tr></table></figure>
<h2 id="同步服务器文件夹">同步服务器文件夹</h2>
<blockquote>
<p>文件还是要备一份在本地稳妥。</p>
</blockquote>
<ol type="1">
<li>【不推荐】考虑到自己是坚果云用户,希望能够通过<a
href="https://chenyongjun.vip/articles/100">坚果云实现文件夹同步</a>,但是 使用
<code>JupyterNotebook</code> 的时候会保存失败,丢失内容。(<strong>大坑</strong>,但是作为其他用途或许不错)</li>
<li>【极力推荐】<strong><a