Dipole's Emission Near Sphere
Dipole’s Emission Near SphereIntroduction
As is shown in above figure, In this project I will simulate the dipole’s emission near a sphere. The sphere could be dielectric or metalic. The theoretic description could be found in this paper ref1.
We will analyze two different types of dipole orientations.
Radial dipole orientation which means dipole is orthogonal to the radial direction. $\mathrm{d}_{ort}$
Tangential dipole orientation which means dipole is parallel to the radial direction. $\ ...
Mathematica的一些小技巧
MathematicaMathematica的一些小技巧[TOC]
如何更好的使用目录?解决方案来自于Table of contents with hyperlinks
12345678910111213nbTOC[nb_] := Button[Mouseover[#, Style[#, "HyperlinkActive"]] &@ First@NotebookRead@#, SelectionMove[#, All, CellContents], Appearance -> None, BaseStyle -> "Hyperlink", Alignment -> Left, ImageSize -> 1000] & /@ Cells[CellStyle -> {"Title", "Chapter", "Section", "Subsection", "Subsubsection"}] // CreatePalette[ Panel[Column[#, Divide ...
Mathematica 排版技巧
MathematicaMathematica 排版技巧[TOC]
前言以前一直觉得Mathematica就是一个计算器一样的软件,符号计算还可以,数值计算一般。后来从知乎的一些少有的帖子里,知道了Mathematica的强大,以及对于我们这种偏理论的工作者的好处。慢慢开始学习Mathematica,用它来进行科研推导、记笔记、数值计算和绘图。关于Mathematica有很多技巧、关键点需要总结和注意,今天本篇笔记将会专注于Mathematica的排版使用。
使用默认样式表、样式和word一样,我们可以对标题、副标题、章节、正文等规定特定的格式,输入一段文字之后,我们只需要将该段文字选择为特定格式即可。
Mathematica的使用手册写的非常详细,点击“帮助”->“Wolfram参考资料”,然后搜索“样式表”,就可以有非常详细的讲解了。也可以去官网看。
我这里也再按照自己的话说一遍。
Mathematica的每一个单元具有独立的属性,可以对整个单元的属性进行调整。Mathematica有不同的模板,称为“样式表”,默认新建一个Mathematica的文件,其样式表为“Defaul ...
Ubuntu安装COMSOL,MATLAB以及FDTD Solutions
Ubuntu常用软件列表作为光学研究方向的研究生,不可避免的需要进行光学仿真计算,我目前常用的光学仿真以及数值计算软件有如下:
COMSOL5.1/5.4
MATLAB 2018a
Lumerical Fdtd Solutions 2016a
接下来将分别介绍对应的安装方法。
安装Lumerical Fdtd Solutions 2016aA.转换包rpm包为deb格式Lumerical官网对于linux的包只有rpm文件,即是为redhat等系统准备的,对于Debian/Ubuntu系统,需要将rpm转为deb包,工具为alien,安装方式为
12sudo apt-get updatesudo apt-get install alien
转换方式为,cd到对应的rpm包所在目录后输入
123sudo alien ./*.rpm## 或者sudo alien --scripts ./*.rpm
就会生成对应的deb包,这种方法一般不推荐,因为在装换的时候可能会遇到各种各样的小问题(有时候会报错),但是没有其他更好的办法了。
B. 逐个安装Lumerical的包逐个安装对应的软件Mo ...
如何让windows软件在高分辨率屏幕笔记本显示不模糊
Windows 目前windows笔记本的分辨率和色域都逐渐变好,不再是以前的1366768的TN屏幕。不过由于windows要适配各种型号的电脑,对于高分屏幕适配的根本不好。我自己的笔记本是13.3寸的1920 1080的屏幕,在打开一些软件的时候,会有字体模糊的现象。比如Mathematica,Vegas等等。这主要是软件没有针对该型号笔记本做专门的适配。解决方法有两种,第一种是将笔记本的缩放改成原来的100%,这对于小屏幕笔记本不友好,字体太小了。这里推荐第二种方法:
该方法适用于所有软件:
第一步,先找到对应软件的启动文件”xxx.exe”文件,比如我们要改Mathematica,那么在C盘找到”Mathematica.exe”。不同软件的位置不同,推荐安装软件Everything,直接搜索,会方便很多。
第二步,右键点击该”xxx.exe”文件,选择属性->兼容性->更改高DPI设置。勾选两处即可(如下图所示),然后确定退出。
Neural Networks Learning I -Recognize Handwritten Digits
Python #DeeplearningThis is the beginning of my neural networks learning. I have read the books written by Michael Nielsen for a long time and I think now it’s time to complete the learning examples in first chapter of his book.
Introduction of some functionsI first want to show the use of some functions in his program example. These uses really surprise me a lot.
numpy.randomThe first function is the random function from the package numpy. In initialize the matrix, the random function is used ...
Typora 使用技巧
Markdown #Typora介绍Typora是一款很多人推荐的markdown编辑器,其对Markdown的支持真的是非常全!我以前试过Sublime, VS Code, Vnote等各种工具,这些软件都各有优劣。其中Vnote我觉得是做的比较良心的,特别是对搜索功能以及输入图片、表格的功能,缺点就是支持打字的手感差一些,而且预览模式也差一些。
通过学习,我发现typora可以做到很多事情,除了一般的插入图片、代码块、引用外,还有好多其他的功能,详细的介绍可以直接访问 Markdown Reference. 下面是官网的一些教程,我直接Copy了一遍。
OverviewMarkdown is created by Daring Fireball; the original guideline is here. Its syntax, however, varies between different parsers or editors. Typora uses GitHub Flavored Markdown.
Overview
Block Elements
Paragraph ...
平面波在双层介质的传播学性质
Optics目的目前我们课题组的实验基本都是片上的一些实验,实际的实验中片上会有一些光学微纳元件,如量子点、金纳米颗粒等。我最近需要计算片上的散射、透射性质,为了增加结果的精度,背景场最好是输入解析的表达式。将解析表达式输入进去COMSOL也得格外注意。
关系推导边界条件以及平面波的基本性质对于任意的平面波,当其在介质表面发生透射、反射时,由于其偏振方向和入射面的方向的不同,可以分两种情况来讨论
S偏振, 电场与入射面垂直,如下面的左图所示
P偏振,电场与入射面平行,如下面的右图所示
注意下面的图的正方向规定。因为不同的规定最后的表达式会有正负号的区别,我接下来的所有推导都是按照下面的图来的。
即任意的平面波可以写为S偏振和P偏振的合成
\vec{E}=\vec{E}^{s}+\vec{E}^{p}我们假设一平面波从介质1入射到介质2,我们规定的方向为由介质2指向介质1,则电场和磁场需要满足对应的边界条件
\vec{n}\times (\vec{E}_{1}-\vec{E}_{2})=0
\vec{n}\cdot (\vec{D}_{1}-\vec{D}_{2})=\sigm ...
由本征值计算本征向量
Math最近需要求解任意本征值的本征矢量,目前有两种方法计算本征值,一种是传统的方法,另外一种是陶哲轩ref1去年提出的一种方法。后来证明这种方法不是他首次提出,但是确实是一种新的思路。本次笔记是为了展示如何用他的结论。例子也是他的论文找的。
计算本征值计算本征值很容易,例如对于矩阵,
MX=\lambda X\implies (M-\lambda I)X=0\implies \det(M-\lambda I)=0方法简述传统方法
(M-\lambda I)X=0将计算的本征值带回原矩阵求一个代数方程即可。
陶哲轩新方法
|v_{i,j}|^2 \prod_{k=1,k\neq
i}^{n}\left(λ_i(A)-λ_k(A)\right)=\prod_{k=1}^{n-1}\left(λ_i(A)-λ_k(M_j)\right)其中
$v{i,j}是特征值\lambda{i}对应特征向量的第j$个元素
是矩的第个特征向量(本征向量、本征矢)
$M{j}为矩阵A的第j个余子式,\lambda{k}(M_{j})是该余子式的第k$个特征值。
这种方法的好处是直接带公式就可以, ...
从COMSOL的log文件读取运算时间和内存并绘图
Python #Tools #Dataprocessing #COMSOL目的目前对于python处理文字有了一些心得,刚好最近在用COMSOL做数值计算,需要参数扫描。我想分析每次计算COMSOL需要的计算内存和运算时间,防止计算内存爆掉了。
具体操作COMSOL log文件信息详细记录了每一次扫描的一些进程,一般开头是这样的
123456789**********************************************COMSOL 5.4.0.225 progress output file**********************************************Thu Feb 20 21:36:07 CST 2020<---- Compile Equations: Wavelength Domain {st1} in Study 1 {std1}/Solution 1 (sol1) {sol1} ------------------------------------------------------------Started ...