<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Hello Che-Hong,</div><div><br></div><div>I think it is possible that the U_dis matrix wasn't read and stored properly. U and U_dis matrix must be unitary. </div><div>And the orthogonality of U_dis is always checked internally using the <b>internal_check_orthonorm()</b> function in <b>disentangle.F90 </b>as Arash mentioned.<br></div><div>I just included a function to read wannier90 U_matrices (either U_mat or U_mat_opt) in my <a href="https://hungpham2017.github.io/mcu/index.html#">MCU</a> package. Please see the function <a href="https://github.com/hungpham2017/mcu/blob/master/mcu/wannier90/utils.py#L53">here</a>. </div><div><br></div><div>The unitary of U or U_dis can be checked by using a simple python script:</div><div><br></div><blockquote style="padding:0px;margin-top:0px;margin-right:0px;margin-bottom:0px"><div>import numpy as np<br>import mcu</div><div>kpts, U_kpts = mcu.read_U_matrix("wannier90_u_dis.mat")<br>nkpts, nband, nwann = U_kpts.shape<br>for i, kpt in enumerate(kpts):<br>    is_unitary = np.linalg.norm(U_kpts[i].T.conj() @ U_kpts[i] - np.eye(nwann)) < 1.e-8<br>    print("kpt = {0:6.3f} {1:6.3f} {2:6.3f} ;Is U_kpt unitary?: {3}".format(kpt[0], kpt[1], kpt[2], is_unitary))</div><div></div><div><br></div></blockquote><div>I attached the in/out files from my testing on the MoS2 layer so you can check it out yourself.</div><div>Let me know if it solves your problem.</div><div><br></div><div>Best,</div><div>Hung</div><div><br></div></div></div></div></div></div></div></div></div></div><br><div class="gmail_quote"><div class="gmail_attr" dir="ltr">On Tue, Mar 3, 2020 at 11:42 AM Mostofi, Arash <<a href="mailto:a.mostofi@imperial.ac.uk">a.mostofi@imperial.ac.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid">



<div style="overflow-wrap: break-word;">
Dear Che-Hong
<div>I believe the code internally does this check (in subroutine dis_project in src/disentangle.F90) and reports an error if it is not satisfied. Admittedly, I’ve never explicitly checked that u_matrix_opt, as written to the seed name_u_dis.mat file,
 satisfies it... Note that the order of the matrix multiplication matters: U_{dis}^{\dagger}U_{dis} = 1, but not U_{dis}U_{dis}^{\dagger}, so a little care is needed in the evaluation. Perhaps you could check and, if you are sure it’s a problem, then post your
 input and output files (and script to read the matrices and evaluate the matrix product) and someone will try to take a look.</div>
<div>Best wishes,</div>
<div>Arash</div>
<div><br>
<div>
<div style="overflow-wrap: break-word;">
<div style="color:rgb(0,0,0);text-transform:none;text-indent:0px;letter-spacing:normal;font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
— <br>
Professor Arash Mostofi — <a href="http://www.mostofigroup.org" target="_blank">www.mostofigroup.org</a><br>
Director, CDT in Theory and Simulation of Materials<br>
Imperial College London</div>
<div style="color:rgb(0,0,0);text-transform:none;text-indent:0px;letter-spacing:normal;font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;word-spacing:0px;white-space:normal">
<br>
</div>
<br>
</div>
<br>
</div>
<div><br>
<blockquote type="cite">
<div>On 1 Mar 2020, at 14:00, 周哲弘 <<a href="mailto:lion08130716@gmail.com" target="_blank">lion08130716@gmail.com</a>> wrote:</div>
<br>
<div>
<div>
<div>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US" style="font-size:1rem">Dear Wannier developers</span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US" style="font-size:1rem">I have used a combination of VASP (PAW-GGA package) and Wannier90 to obtain</span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US" style="font-size:1rem">MLWFs in the system of monolayer MoS2.</span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US" style="font-size:1rem">Recently I am trying to output the U and U^{dis} matrices (seedname_u.mat and seedname_u_dis.mat), and I find that U^{dis} doesn’t follow the
 rule (U^{dis})dagger* U^{dis}=1 (User Guide v3.0, p.14, footnote 2).</span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US" style="font-size:1rem">Could anyone help me with this problem?</span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US"><u></u> <u></u></span></p>
<pre style="margin:0cm 0cm 0pt;color:rgb(49,49,49);font-family:MingLiU;word-spacing:1px;white-space:pre-wrap"><span lang="EN-US" style="font-family:Calibri,sans-serif;font-size:1rem">Che-Hong Chou<u></u><u></u></span></pre>
<pre style="margin:0cm 0cm 0pt;color:rgb(49,49,49);font-family:MingLiU;word-spacing:1px;white-space:pre-wrap"><span lang="EN-US" style="font-family:Calibri,sans-serif;font-size:1rem">Graduate Student<u></u><u></u></span></pre>
<pre style="margin:0cm 0cm 0pt;color:rgb(49,49,49);font-family:MingLiU;word-spacing:1px;white-space:pre-wrap"><span lang="EN-US" style="font-family:Calibri,sans-serif;font-size:1rem">Department of Electrophysics<u></u><u></u></span></pre>
<pre style="margin:0cm 0cm 0pt;color:rgb(49,49,49);font-family:MingLiU;word-spacing:1px;white-space:pre-wrap"><span lang="EN-US" style="font-family:Calibri,sans-serif;font-size:1rem">National Chiao Tung University<u></u><u></u></span></pre>
<pre style="margin:0cm 0cm 0pt;color:rgb(49,49,49);font-family:MingLiU;word-spacing:1px;white-space:pre-wrap"><span lang="EN-US" style="font-family:Calibri,sans-serif;font-size:1rem">Taiwan<u></u><u></u></span></pre>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal" style="color:rgb(49,49,49);word-spacing:1px"><span lang="EN-US" style="font-family:新細明體,serif"><u></u> </span></p>
</div>
</div>
_______________________________________________<br>
Wannier mailing list<br>
<a href="mailto:Wannier@lists.quantum-espresso.org" target="_blank">Wannier@lists.quantum-espresso.org</a><br>
<a href="https://lists.quantum-espresso.org/mailman/listinfo/wannier" target="_blank">https://lists.quantum-espresso.org/mailman/listinfo/wannier</a><br>
</div>
</blockquote>
</div>
<br>
</div>
</div>

_______________________________________________<br>
Wannier mailing list<br>
<a href="mailto:Wannier@lists.quantum-espresso.org" target="_blank">Wannier@lists.quantum-espresso.org</a><br>
<a href="https://lists.quantum-espresso.org/mailman/listinfo/wannier" target="_blank" rel="noreferrer">https://lists.quantum-espresso.org/mailman/listinfo/wannier</a><br>
</blockquote></div><br clear="all"><br>-- <br><div class="gmail_signature" dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><br></div><div>Hung Q. Pham</div><div>Gagliardi Group</div><div>Office: Smith 101</div><div>Email: <a href="mailto:phamx494@umn.edu" target="_blank">phamx494@umn.edu</a></div><div>Personal page: <a href="http://hungpham2017.github.io" target="_blank">hungpham2017.github.io</a><br></div><div dir="ltr"><span style="font-size:12.8px">Department of Chemistry</span><br></div><div dir="ltr"><span style="font-size:12.8px">University of Minnesota - Twin Cities, </span><span style="font-size:12.8px">Minneapolis, MN 55455</span></div></div></div></div></div></div></div></div></div></div></div></div></div>