精华内容
下载资源
问答
  • 但实际上这取决于两方面:一方面是你要去的洞是什么样子的;另一方面是你是什么样子的。END关于版权:部分图文来自网络,版权归原作者所有,若涉及版权问题,请原作者联系我们及时删除。精品文章推荐:世界顶级...

    泛   /   运   /   动   /   国   /   际   /   社   /  区

    257e1539-1820-eb11-8da9-e4434bdf6706.jpeg

    文章转载: 一席

    王远,洞穴潜水爱好者。

    很多人说洞穴潜水是极限运动,说洞穴潜水非常危险、非常可怕。但实际上这取决于两方面:一方面是你要去的洞是什么样子的;另一方面是你是什么样子的。

    END

    关于版权:部分图文来自网络,版权归原作者所有,若涉及版权问题,请原作者联系我们及时删除。

    277e1539-1820-eb11-8da9-e4434bdf6706.png

    精品文章推荐:


    世界顶级潜点季节表,据说资深潜水员都知道~

    科学的证据,潜水真的可以影响情绪!

    蝠鲼在大海太可爱,但在广州太可怜!

    我差点死在马尔代夫!

    从入门级到朝圣级,船宿该怎么选?

    查询预订潜水行程,请添加小程序:


    潜水行程匹配预定小程序

    317e1539-1820-eb11-8da9-e4434bdf6706.jpeg

    更多资讯请关注:

    喜乐沙邦 XL_SHABANG / 喜乐沙邦服务号 XILE-SHAB 

    397e1539-1820-eb11-8da9-e4434bdf6706.png

    展开全文
  • 最近在家闲的快发霉了,无聊之下花了点功夫把部分代码在OSX上跑起来(之前都在Win上开发),遇到...先干掉各种异步加载接口和构造最小可复现demo之后,对比发现某个类的数据很奇怪:直观的看就是mNbVertices和mNb...

    最近在家闲的快发霉了,无聊之下花了点功夫把部分代码在OSX上跑起来(之前都是在Win上开发),遇到了一个很有意思的崩溃:目前定位出来是不同compiler下的memory layout区别。

    首先从表象上来看,加载同一份资源在Win上没问题,然后OSX上稳定崩溃(都是x64);先干掉各种异步加载接口和构造最小可复现demo之后,对比发现是某个类的数据很奇怪:

    6ac61619651d7eeb5921d4ecead7dda0.png

    3fc1a7810445f45326652a03eb082b54.png

    直观的看就是mNbVerticesmNbTriangles错位了,同时后面的mVertices开始又没问题。接下来找下这块数据是哪里赋值的:

    RTreeTriangleMesh* obj = new (address) RTreeTriangleMesh(PxBaseFlag::eIS_RELEASABLE)
    

    这里使用了in placement new,先排查下address部分的数据,对比了下OSX/Win下没区别。然后看下具体出问题的父类定义:

    class TriangleMesh : public PxTriangleMesh, public Ps::UserAllocated, public Cm::RefCountabl
    

    以及打印下这些基类的大小和成员变量地址

    printf("%d %d %d %d %dn", sizeof(RTreeTriangleMesh), sizeof(TriangleMesh), sizeof(PxTriangleMesh), sizeof(PxBase), sizeof(RefCountable));
    printf("%d %d %d %d %dn", (void*)obj, (void*)&(obj->mNbVertices), (void*)&(obj->mNbTriangles), (void*)&(obj->mVertices), (void*)&(obj->mRefCount))
    

    数据结果表明sizeof的结果两个平台一致

    256 160 16 16 16

    但是成员变量偏移部分出现了不一致

    • OSX上的成员变量地址偏移
      • mNbVertices 28
      • mNbTriangles 32
      • mVertices 40
      • mRefCount 2
    • Win上的成员变量地址偏移
      • mNbVertices 32
      • mNbTriangles 36
      • mVertices 40
      • mRefCount 24

    OK这里的结果也和最前面的差异对上了:临时解决方案是RefCountable里加了个int占位。

    ps. 但这里有点奇怪的是明明PxTriangleMeshRefCountable都是大小为16,那么TriangleMesh的两个基类应该直接占掉32了,为什么XCode里mNbVertices偏移还是28…待继续深入

    展开全文
  • 本文导读:1,对TCMT模型的基本认识;2,本文的COMSOL仿真重复;...今天我们收到了复旦大学cqn同学的投稿,复现斯坦福大学范汕洄老师2003年的JOSAA,标题Temporal coupled mode theory for the Fano resonan...

    f65a9130fc3ceb1a3de9a2d951f542ec.png

    本文导读:
    1,对TCMT模型的基本认识;

    2,本文的COMSOL仿真重复;


    模数哥按:

    为了能让公众号更好地、更持久地、更丰富地为大家提供咨询和服务,模数哥非常鼓励、欢迎大家投稿:COMSOL杂货店合伙人计划。今天我们收到了复旦大学cqn同学的投稿,复现的是斯坦福大学范汕洄老师2003年的JOSAA,标题是Temporal coupled mode theory for the Fano resonance in optical resonators。如需购买该模型,请QQ联系蔡同学:85759607。后面他还会给出相关的其他论文介绍,自成一个系列。

    不得不说,范老师真的是粉丝遍天下,模数哥之前虔诚地介绍过很多范老师的工作,如光学拓扑-2012 NP 基于动态调制相位实现光子等效磁场,还有时变调制- 2009 Nat. Photon. 基于光子带间跃迁的完全光隔离。

    今天要介绍的这篇工作,是发表在JOSAA这个老牌的光学杂志上,其实范老师二十年前的很多经典文章都发表在这类因子并不是很高的杂志上。这篇文章迄今被引用近900次了,也是非常高引了。文章以二维光子晶体板为例,其中的模态分析可以参考模数哥春天的帖子:模型分享-2020 Science 超快控制的涡旋激光器,文章所讨论的法诺共振,也是一种较为普遍的共振叠加现象了,如石墨烯仿真-2013 SR 基于石墨烯的可调法诺共振。话不多说,下面请欣赏cqn同学的表演。


    一、对TCMT模型的基本认识

    关于这个时域耦合模理论(Temporal coupled-mode theory, TCMT),其实是一个很好很强大的物理模型,在很多方面被广泛运用。我们可以参考原文的Fig. 1来介绍这个模型的基本思想:

    b29a6164fb0a030b6489872466bc874d.png

    如上图所示,这里研究的体系是single-mode optical resonator system,也即可以认为是单模谐振器(或者说共振结构)被外场激发后的响应。下面我从几点来阐述里面丰富的物理:

    1,为什么要研究共振结构?

    因为自然界材料的响应不够强,自由度不够,因此诞生了超材料,超材料最早的工作就是用金属bar和开口环的共振特性来制造具有负介电常数或者负磁导率的人工材料;

    2,为什么是“时域”耦合模理论?

    实际上,和temporal相对应的是spatialcoupled-mode theory,这方面也有很多非常有趣的工作,譬如浙江大学阮智超老师和Fan合作的文章;

    3,最早的CMT模型实际上并不是在纳米光学领域中被提出的,而是在电路理论中,可以参考Haus的《光电子学中的波与场》中的相关章节,具体来说就是一个LC回路(可以看成一个共振结构,具有一个共振频率)被接到一段外接电路中,从而可以和纳米光学中的体系进行类比(外场激发出一个共振“模式”,这个模式又向外辐射能量);

    4,文章标题里还出现了Fano line shape,Fan这篇文章提出这个CMT模型的主要目的其实就是用来解释光子晶体板透射谱中出现的尖锐的不对称线形,其实这种线形和Lorentz线形在很久以前人们对量子力学的研究中就已经出现了,在这篇文章里具体来说就是外场激发了一个高Q(但不会无限高Q,否则不会被激发)的“模式”,和一个低Q的背景,也即分别对应文章里第一段里提到的resonance-assisted indirect pathway和direct pathway,模式的辐射波和背景的出射波(不完全严谨地说,去掉模式,只剩端口,端口之间存在各个出射波的能流分配,就叫背景)发生干涉,就会在高Q模式的共振频率附近很窄的范围内形成一个尖锐的不对称线形。(如原文Fig.2(b)所示);

    5,上面所说的是CMT的大致图像,但是一个物理模型也需要一定的数学支撑,原文的(1)式和(2)式即为单模多端口CMT的动力学方程,模式的振幅α由各个外场s+(m维矢量,对应m个接口)共同激发,同时本身是个leaky mode(可类比dipole辐射,本身由于电子的振荡就会不断损失能量,等效受到一个辐射反作用力,导致振幅不断衰减),即使不存在外场,它也会缓慢地指数衰减(为什么说缓慢,因为CMT要求模式必须高Q,可参照mit最有名的那本光子晶体教材Photonic crystal-Molding theFlow of Light,第200页,里面有提到Q最好高于30),以上差不多是原文(1)式的内容(理解起来可能有些困难);而(2)式则很简单,即总的出射波是背景通道的出射波和被激励的模式的辐射波的叠加(模式由于高Q很难被激励,但是和经典力学一样,一旦满足共振条件,受力和速度就能保证在一个周期内基本时刻同方向,不停做正功导致振幅较大,响应较强)

    6,可以从数学上看到,原文的(1)式和(2)式中出现了很多个耦合系数(由于Maxwell方程组是线性的,因此响应一定是激励的线形组合),这些耦合系数往往不是相互独立的,而要受到时间反演对称性和能量守恒或者是Lorentz互易原理的支配,这些对于初学者来说很不容易理解,我建议仔细翻一下Haus的那本教材找找感觉,一个比较有效的类比是,原文(1)式中的描述了单位强度的外场能激发出多少模式,实际上就很像是外场能激发出多大的偶极矩,这个量就很像是极化率,因此Haus书里对介电常数或者极化率的那些性质都可以套用类比过来。


    二、本文的COMSOL重复

    耦合模理论CMT深刻的物理内涵还有很多,这里暂时展开这些,下面简要介绍一下仿真的具体流程。一个是频域求解器(Frequency Domain)来求解透射谱,这是COMSOL最通用的功能了,另一个是特征频率求解器(Eigen Frequency)来求解leaky mode复特征频率的实部和虚部。

    3a842663ef65f6d84f89b36c34071c9d.png

    如上图所示,文章以二维光子晶体板为例,首先是用频域求解器算透过率,这一步是老生常谈了了,为了更清晰地显示出共振峰,我们可以用分段扫频的方法适当加密(原文Fig.2b):

    01631118f286c14b268e15df00607f6d.png

    然后我们用复特征频率求解器计算leaky mode的复特征频率的实部和虚部(各代表什么含义?),这是时域耦合模理论的基础:

    dc4fcf7e8549ecfca050e140dd51ca8b.png

    这里还是有很多信息量的,要做多一些说明:

    1,如图所示,COMSOL找到的特征频率有很多实数解,反而是其中的四个复数解(这个其实没有表面上看起来的那么简单,而是涉及到“准模”的概念,这方面最近也有很多前沿的东西和深刻的数学)是我们想要的东西。

    2,仿真时,我们仅需要靠谱一个单元,设置x-y方向是周期边界。和模型分享-2020 Science 超快控制的涡旋激光器 中的能带仿真不同,我们这里并不需要考虑空间的布络赫条件,只需要设置连续Continue即可。需要注意的是,因为是简单的四方晶格,所以存在两个方向偏振的简并,实际上只有两个解。剩下的实数都是不能被平面波外场激发的,而只能用类似电流源这种才能激发。

    3,还有一点和模数哥的不同,我这里在z向用的是散射边界,因为不需要考虑斜出射的情况,只考虑垂直出射的情况,省去了完美匹配层(PML)的设置,这样可以减少很大的计算量。

    以下是某个特征频率处的电场:

    1682d3a8a18f90f0362c607b05b60fa0.png

    我们将两个解(对应Fig.2中的两个共振峰)记录下来:

    bed2e96736ddcad31031a959b952de1e.png

    按照原文里的推导公式即可得到透射谱,也是我模型中的核心了,现在把TCMT理论和COMSOL仿真的结果做个对比,透射率:

    4c7b205d9fb98a5acafff397ce7e448c.png

    下面是透射相位:

    a63a657469b9600a2a18ab010a6b35e4.png

    怎么样?Perfect。请注意这里有个小细节,整篇原文都是基于单模多端口的CMT来进行的,这里却有两个模式,怎么处理?您先自己琢磨琢磨。

    还有最微妙的一步,就是这个体系下什么是背景?

    这个问题的回答可以参考范老师2002年的一篇PRB的工作Analysisof guided resonances in photonic crystal slabs,里面有很清楚的解释,如何筛选出一个比较复杂体系的背景——能对上背景谱的体系就是背景。

    怎么找能对上背景谱的体系?我就是参照这篇PRB里的方法。

    展开全文
  • 我们项目设置有报警监控(定时每隔10分钟访问一下网站的一个固定链接),曾经有段时间,每天都会收到两三次报500错误的邮件,但当自己再手动访问时却访问正常…这应该最常见的错误了,语法错误也能很快复现,只要把...

    场景一:我们项目设置有报警监控(定时每隔10分钟访问一下网站的一个固定链接),曾经有段时间,每天都会收到两三次报500错误的邮件,但当自己再手动访问时却访问正常…

    这应该是最常见的错误了,语法错误也能很快复现,只要把报错信息暴露出来即可根据问题立马解决。

    如果是在本地或测试环境,通常我们是这么处理的,在程序入口中设置输出报错信息即可:

    41742b1416f740c6700ec31e2668a353.png

    但在线上环境的话,因为用户都在用,不可能允许我们就那么赤裸裸的打印错误,怎么办呢?可以在程序入口文件中设置将错误输出到日志文件中,具体代码如下:

    72d460d010793361531a04cd3cea7a3b.png

    刚才说的场景一问题,后来我们按照上面输出到log的方式输出才发现的,是因为mysql连接异常断开而程序继续执行(连接mysql时正常,但当调用具体查询方法时报错,记得好像是在使用方法mysqli_real_escape_string()的地方)导致的fatal级报错,最终才顺利修复了。

    磁盘满了导致

    场景二:有一次,一个同事说图片上传不上去了,一直报错500,之前还好好的,但没找出是什么问题,因为那块当时是我负责开发的,所以就过来找我,各种检查都没发现是什么问题,其它页面访问正常,本页面把代码全删除了再上传还是报错,找了很久最终才发现是磁盘满了o(╥﹏╥)o…

    因磁盘空间不足,没有足够空间读写数据而导致的500报错极不常见,且不易及时发现。通常遇到500问题,很快想到的是程序错误,其实还有可能是磁盘空间不足了,如果在程序上为找到任何问题,可以查看下是否是磁盘空间不足问题哦~

    df -h 查看磁盘空间占用情况

    695d9d289a0af70f59a8c55ae0ebe0fa.png
    dcffc6dc61f7ad7e7b5ee9599da559c1.png
    展开全文
  • 而且这些都很难复现的错误,那么这时候就会有小伙伴得意地说 “你不能复现,我就无法解决啊”,留下测试的小伙伴在那里一脸懵逼。嗯,真是甩的一口好锅,当然,这也不一定就是你的锅。资源加载失败的问题解决难度...
  • 意思是在28354h这个位置插入什么 把图片放到010里看一下, 有一块识别不出来的数据,结合前面的提示, 把这一块剪切下来放到提示的位置。(这里我看了半天大佬的wp没懂,问了群里的师傅才知道,谢谢好心的师傅们)...
  • CVE-2019-14287 漏洞复现

    2019-10-15 12:40:06
    一.漏洞介绍 /etc/sudoers文件配置不当,导致用户可以绕过安全策略,以root身份运行命令。 (默认情况下的linux,不会遭受此攻击) ...这是什么意思呢? 如果这样配置,就允许test用户以非root...
  • 那么可能有两层意思:一找后门,二写后门。但是本题的提示很少,那么可能信息泄露。 这里GIT信息泄露,访问http://10.198.99.127:8026/.git/logs/HEAD,发现有日志信息泄露 [外链图片转存失败,源站可能有...
  • 生产者、消费者问题什么是生产者、消费者问题?意思很简单,就是生产者给生产链生产,而消费者从生产链中拿出。那关键点已经出来了,问题就在于怎么处理这一条生产链(正规叫法应该叫缓冲区)?伪码...
  • cv2保存的图片是什么?RGB or BGR

    千次阅读 2020-03-17 19:29:36
    上面有两层意思,下面复现: 1-cv2读图,存图,不需要转换 没毛病。只是保存的时候肯定有些什么特殊变化,因为保存后的图比之前内存大了(不是上面显示的压缩,上面图错位了) 2-Image读图,cv2存图肯定需要...
  • 果子推荐:单细胞的教程资源十分丰富,最普及的scRNA-seq的教程。scATACseq数据也很重要,一直以来没有很好的教程。此时绿叶团队的ArchR出现了,绿叶团队此前在NBT发过两篇... 意思很明显,这全部用R就可以完成...
  • 看pwn入门视频,有许多属于不知道是什么意思,搜索记录一下 正文 名称 解释 exp (Exploit) 漏洞利用,,一般是个demo(演示)程序 poc (Proof of Concept) 漏洞证明,一般是个样本,用来证明和复现 vul ...
  • SVM、SVC、SVR三者的区别

    千次阅读 2020-06-16 11:13:05
    使用时经常会用到,但又不知道什么意思,仅仅学会调包调参数不是一个机器学习者的能力体现,但完全搞懂他们的数学公式、学会复现出算法也没有必要的。 知乎上关于什么支持向量机的解释有很多,主要为为大家总结...
  • bugku web wp

    2019-10-12 15:34:51
    写在前面: 简单步骤不再复现,只是再复习一下知识点,可以挖深一点。...我们百度这个是什么意思 是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。 互联网中的地址是数字的IP地址,...
  • CSRF-跨站请求伪造

    2020-09-19 15:24:56
    跨站请求伪造,一直没明白什么意思,趁着版本还没有修复,正好可以将这个问题复现一下,清楚下整个过程和防护的手段,但是通过什么样的方式去达到实际攻击的效果还是没能想通,达到这样的攻击的前提获取到有效的...
  • 复盘?KISS?

    千次阅读 2019-01-17 20:35:28
    刚收到通知的时候很茫然,复盘这个词我之前看《围棋少年》的时候,也有接触,触类旁通,引申一下,大概做什么我还是知道的,但是KISS毛线意思???好在被科普了一番,也就知道意思了,其实一个对自己反思的抽象...
  • 什么意思呢?我们来复现一下他的情况。这位群友为我们提供了一张表情包图片:要不是我们正儿八经的学术讨论群,可能这位群友已经被锤死了…当然,这个表情包使用一个 URL 提供的,实际上只是相当于模拟从后端...
  • 什么意思呢?我们来复现一下他的情况。这位群友为我们提供了一张表情包图片:要不是我们正儿八经的学术讨论群,可能这位群友已经被锤死了…当然,这个表情包使用一个 URL 提供的,实际上只是相当于模拟从后端...
  • 该趟专车开往Spring Boot事务诡异事件的专车,主要来复现和分析事务的诡异事件。 专车问题 @Transaction标注的同步方法,在多线程访问情况下,为什么还会出现脏数据? 在service中通过this调用事务方法,...
  • 点赞+关注再看,养成习惯没别的意思,就是需要你的窥屏^_^专车介绍该趟专车开往Spring Boot事务诡异事件的专车,主要来复现和分析事务的诡异事件。专车问题@Transaction标注的同步方法,在多线程访问情况下,为...
  • 微信小程序:关于代码片段的探究

    千次阅读 2018-09-11 18:24:27
    打开微信开发者工具,在项目旁边有个代码片段的按钮,截图如下: ...代码片段一种可分享的小项目,可用于分享小程序和小游戏的开发经验、展示组件和 API 的使用、复现开发问题等等。简单的意思就是开发小案例?...
  • 在AWS购买了ES2服务器之后,由于没有绑定弹性IP,每次在服务器关闭之后,不但IP发生了变化,连原来配置好的Nginx报出了标题中的问题,字面意思访问被拒绝。为什么被拒绝就不得而知了。 问题探索 在使用chomod 反复...
  • 2020JSCPC游记

    2020-11-21 15:41:47
    总之金了,终于有一场成绩好意思写游记了23333 复现赛还没有,补题不能只好写游记了( 疫情以来的第一次线下赛,虽然省内,但是感谢举办方。真的很大的慰藉。第一排大佬委员们的发际线真。。。,下意识摸摸头顶...
  • 意思是先调用的下载任务,再去传参数吗! 下面我的调用方式 Aria.upload(this) .load(filePaths.get(uploadPosition)) .setUploadUrl(API.UPLOAD_FILE) .setAttachment("file")...
  • 错误复现 以<code>geatpy/geatpy/demo/soea_demo/soea_demo5/MyProblem.py/这个demo为例,当混合编码决策变量个数为4个,取值范围为[1, 7],也就是demo里的场景,正常, 但是如果我将...

空空如也

空空如也

1 2
收藏数 26
精华内容 10
关键字:

复现是什么意思