tikz中谐振子(弹簧)的绘制,以及声子色散关系的绘制
今天整理了简正模导出声子的内容,其中用tikz画了两张图。一张是整个问题的物理模型,效果如下

这幅图的绘制参考了https://tex.stackexchange.com/questions/41608/draw-mechanical-springs-in-tikz中弹簧的绘制。具体代码如下:
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{decorations.pathmorphing,patterns}
\begin{figure}\label{classical chain}
\centering
\begin{tikzpicture}
\node[circle,fill=gray,inner sep=2.5mm] (a1) at (2,0){$M$};
\node[circle,fill=brown,inner sep=1.5mm] (b1) at (4,0){$m$};
\node[circle,fill=gray,inner sep=2.5mm] (a2) at (6,0){$M$};
\node[circle,fill=brown,inner sep=1.5mm] (b2) at (8,0){$m$};
\draw[decoration={aspect=0.3, segment length=2mm, amplitude=1.5mm,coil},decorate](0,0)--(a1) node[midway,below]{$k$};
\draw[decoration={aspect=0.3, segment length=2mm, amplitude=1.5mm,coil},decorate](a1)--(b1)node[midway,below]{$k$};
\draw[decoration={aspect=0.3, segment length=2mm, amplitude=1.5mm,coil},decorate](b1)--(a2)node[midway,below]{$k$};
\draw[decoration={aspect=0.3, segment length=2mm, amplitude=1.5mm,coil},decorate](a2)--(b2)node[midway,below]{$k$};
\draw[decoration={aspect=0.3, segment length=2mm, amplitude=1.5mm,coil},decorate](b2)--(10,0)node[midway,below]{$k$};
\draw[->,thick](0,-1)--(10,-1) node[right]{$x$};
\draw (2,-1)--(2,-1.3) node[anchor=north]{$X_n$};
\draw (4,-1)--(4,-1.3) node[anchor=north]{$x_n$};
\draw (6,-1)--(6,-1.3) node[anchor=north]{$X_{n+1}$};
\draw (8,-1)--(8,-1.3) node[anchor=north]{$x_{n+1}$};
\draw [<->,thick](2,1)--(4,1) node[midway,above]{$a$};
\draw [<->,thick](4,1)--(8,1) node[midway,above]{$2a$};
\end{tikzpicture}
\caption{1D classical chain oscillators.}
\end{figure}
声子的色散关系是tikz中函数关系的绘制,代码如下:
\begin{figure}\label{phonon}
\centering
\begin{tikzpicture}
\draw[->,thick](-4,0)--(4,0) node[right]{$q$};
\draw[->,thick](0,-0.5)--(0,2.8) node[above]{$\omega_q^2$};
\draw[-,thick](-pi/2,0)--(-pi/2,-0.1) node[below]{$-\frac{\pi}{2a}$};
\draw[-,thick](pi/2,0)--(pi/2,-0.1) node[below]{$\frac{\pi}{2a}$};
\draw[-,thick](-pi,0)--(-pi,-0.1) node[below]{$-\frac{\pi}{a}$};
\draw[-,thick](pi,0)--(pi,-0.1) node[below]{$\frac{\pi}{a}$};
\draw [red,domain=-3.8:3.8,smooth,thick] plot (\x, {1+sqrt(1-0.8*sin(\x r)*sin(\x r))}) node[above]{$\quad\omega_+(q)$ optical phonon};
\draw [blue,domain=-3.8:3.8,smooth,thick] plot (\x, {1-sqrt(1-0.8*sin(\x r)*sin(\x r))}) node[above]{$\qquad \omega_-(q)$ acoustic phonon};
\end{tikzpicture}
\caption{Optical phonon and acoustic phonon.}
\end{figure}
结果如下:

tikz中谐振子(弹簧)的绘制,以及声子色散关系的绘制的更多相关文章
- ArcGis For Silverlight API,地图显示Gis,绘制点,线,绘制图等--绘制点、线、圆,显示提示信息
ArcGis For Silverlight API,地图显示Gis,绘制点,线,绘制图等--绘制点.线.圆,显示提示信息 /// <summary> /// 绘制界面上的点和线 /// ...
- ArcGIS Mobile 自定义图层在绘制面时节点未绘制完全的问题
ArcGIS Mobile 自定义图层在绘制面时节点未绘制完全,如下图: 面的绘制代码如下: public void Draw(Display dis, Pen p1, Pen p2,Pen p3 , ...
- Java小题,通过JNI调用本地C++共享库中的对应方法实现杨辉三角的绘制
1.在Eclipse中配置Javah,配置如下 位置是你javah.exe在你电脑磁盘上的路径 位置:C:\Program Files\Java\jdk1.8.0_112\bin\javah.exe ...
- 使用D3绘制图表(2)--绘制曲线
上一篇是使用D3绘制画布,这一篇的内容是在画布上绘制曲线. 1.之前的html代码没有变化,但是我还是贴出来 <!DOCTYPE html> <html> <head&g ...
- 使用 jsPlumb 绘制拓扑图 —— 异步载入与绘制的实现
本文实现的方法能够边异步载入数据边绘制拓扑图. 有若干点须要说明一下: 1. 一次性获取全部数据并绘制拓扑图. 请參见文章: <使用 JsPlumb 绘制拓扑图的通用方法> ; 本文实现 ...
- Android绘制优化(一)绘制性能分析
前言 一个优秀的应用不仅仅是要有吸引人的功能和交互,同时在性能上也有很高的要求.运行Android系统的手机,虽然配置在不断的提升,但仍旧无法和PC相比,无法做到PC那样拥有超大的内存以及高性能的CP ...
- win32绘制自定义类窗口导致绘制11个窗口的解决办法
上网查了一圈也没有找到解决问题的办法,一旦创建了一个窗口,并且在过程函数中绘制窗口,尤其是一些非子窗口的自定义类窗口,都会生成11个窗口(算上主窗口就是12个),但是使用系统通用控件就不会有这种情况的 ...
- 关于c#winform用sharpGL(OpenGL)绘制不出图形,绘制窗口是个黑框的坑
原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/11790309.html 在c++的opengl中可能是因为是最基本的库,很多东西都把你做好了 ...
- 在 LaTeX 中同步缩放 TikZ 与其中的 node
PGF/TikZ 是 Till Tantau 开发的基于 TeX 的绘图引擎.因其可以直接在 LaTeX 文稿中通过代码绘制向量图,所以是目前流行的 LaTeX 绘图解决方案之一. 在 tikzpic ...
随机推荐
- C++用法总结
1.C++的绝对值符号 如果是整形的,就是abs() 如果是浮点型的,是fabs() 这两个函数都从属于库函数math.h #include <cmath> or #include< ...
- 一段滚动文字的js (jQuery)
function startmarqueeOneSMS() { var t; var to; var ishover = false; var waitone = 3000; var speed = ...
- 3星|《结构思考力》:用金字塔原理整理PPT的思路,案例偏简单
结构思考力 名义上全书是讲结构化思考,实际内容是用结构化思考的方法来整理PPT的思路,让PPT的逻辑更清晰.少部分提到如何修改标题更吸引人,如何做图表设计. 书中结构化思考的基本思路,重要的有两个:1 ...
- Git操作(提高篇)
Git操作(提高篇) 分支管理 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 假设你准备开发一个新功能,但是需要两周才能完成,第一周 ...
- DA-GAN技术【简介】【机器通过文字描述创造图像】
[题外话:今天上课我做了一个关于DA-GAN技术的ppt演讲,写一点东西留念一下...] 转载请注明出处:https://www.cnblogs.com/GraceSkyer/p/9107471.ht ...
- Yii安装使用教程(转)
Yii 是一个基于组件的高性能 PHP 框架,用于快速开发大型 Web 应用.它使Web开发中的 可复用度最大化,可以显著提高你的Web应用开发速度.Yii 这个名字(读作易(Yee) 或 [ji:] ...
- Python学习之路 (五)爬虫(四)正则表示式爬去名言网
爬虫的四个主要步骤 明确目标 (要知道你准备在哪个范围或者网站去搜索) 爬 (将所有的网站的内容全部爬下来) 取 (去掉对我们没用处的数据) 处理数据(按照我们想要的方式存储和使用) 什么是正则表达式 ...
- ethers.js-2-wallets and signers
Application Programming Interface (API) Wallets and Signers A Wallet manages a private/public key pa ...
- 打开一个网站中的不同页面时,相同的js文件会被重复加载吗?
作者:JasonYang链接:https://www.zhihu.com/question/41184156/answer/135195798来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非 ...
- Mac生成APP图标和启动图的脚本
概述 之前用的一个批量导出APP图标和启动图的软件,今天发现收费了,于是自己造了个简单的轮子. 实现 Mac上的sips命令,可以很方便的帮助用户修改图片尺寸 Xcode里面的APP启动图资源包含两部 ...