 Yeah, I did. Yeah, thanks. Do you hear me? Okay, can I start? Okay. Okay. Good morning, everyone. Okay, I'm Chul-Han Park and I will today I will talk about two different things. I will talk about the second one first. I'm from Seoul National University in Korea. Thank you very much for organizing this wonderful workshop from which I benefited much, and I think I will be. So I really appreciate the efforts of the organizers and also the participants. So I will talk about the second topic first and then the first one, but the reason why I made my title this way is that if I switch the order, then it's a bit confusing. Okay. Today I will talk about two works which were done by two of my graduate students who are very smart and extremely hardworking. Okay, Chemu and Min-Soo. First, I will talk about Vanilla function perturbation theory. We, when we want to calculate the matrix elements like some generic operator O, or for example the phonon perturbation V that is characterized by the phonon momentum Q. So yeah, we want, when we want to calculate these matrix elements, and here the size are the energy against states. What we normally do is we calculate this, these matrix elements within the Vanilla function, localized Vanilla function basis, like these were that. And from that we do free transform and then we can obtain these matrix elements at many, many K points with very low computational cost. And this part was done by this work and in this part was done first by this work. And let's now move on to different quantity. Here's an example, phonon induced electron self energy, but we will focus on the upper fund, so called upper fund part, which we have we sum over all the phonon modes. And then for each phonon mode, we sum over the electron bands, whose energy is above a certain critical value. And we sum these terms. And if you look at this, it looks like some first order perturbation to the energy against state, right, except that you're doing some over every all the states. So, we can change this by distance square bracket. So we first do this first order correction to the energy against state and then subtract the remainder, which is the states whose energy is below the critical value. And we know that this part can be very efficiently calculated with bunny interpolation because we know we can interpolate the matrix elements and the energy eigenvalues and so on. But for this one, one can obtain this by solving stern eye medication, but which is not very cheap. So this is the bottleneck to calculate the electron self energy at many, many key points. Let's discuss another different topic, which is shift current I will not show you the entire occasion for calculating shift current but in order to calculate shift current we need to evaluate this summation of our infinite number of bands. So let's discuss this work in 2006. So the use are the eigenstates of H of K. And if we change K by K plus DK, then it will be the original H of K plus this small perturbation. And for this perturbation you have NK will change to you and K plus DK because our Hamiltonian is now K plus DK. So we know that this state can be written as this derivative over K times DK. If our the perturbation is this, we know that our first order wave function correction is given by that. Okay. We know very well how to evaluate this derivative, which can be written using bunny functions like this. And we know how to deal with this guy and that guy very well so we. Yeah, we know very well about this. This thing whose perturbation is VK that we know the first order wave function correction is just the momentum derivative of this u wave function. So it can be calculated without summing over infinite number of bands. Although there are beautiful covariant derivative physics shift factor and so on. So that's not the focus of this presentation so I will not discuss that today. And let's change this velocity operator by spin current operator, which is that given by this. Now we have the spin direction as well. So from our previous discussion, we know that we can write this down as this like this that perturbation to first order perturbation to the wave function due to perturbation of this guy. But there is no easy way to calculate this one as in shift charge current in the shift spin current case. So we can do Stern-Heim medication but if we need this to evaluate this at many many cake points then it would be too heavy. Here's the last example. So, in order to evaluate the anomalous whole conductivity one has to calculate this for Kubo formula. And we know that it can be written like this. So yeah. Two perturbations. Actually, we don't, so we don't need the sum of our infinite number of bands. And but in practice we do better than this we converted to difference between the derivative of very connection. So we only need R and H matrix element and we don't need R square like this. But yeah, that's not the main focus of this presentation so I will not go into that. And let's see what happens if we replace this VB by this spin current operator. So actually this, so evaluating this sum over reasonably large number of bands using VINI interpolation have been done by these two groups, including myself and Evo and Shibun as well. And we can convert it to the first order wave function correction the inner product. So for the same reasons turn high medication is not easy to solve for many many K points. So, what we want to have is these following matrix elements at many many K points, and all of them involves the first order correction to the energy agonist state. And how do we do that so we change the Hamiltonian we perturb it by adding small perturbation lambda is a small parameter. And then the energy agonist state will change to will be a function of lambda the first the zero third order term and the first order term correction and so on. And then, also, we can visualize this perturbed system. And, let's say our bunny arise, bunny bunny function for this perturbed system is a function of lambda zero third order term and the first order correction and so on. So what we are interested in is this guy at many many K points right. We want to obtain this guy and many many K points. So, what we did with the unperturbed Hamiltonian is that we need matrix elements involving this guy and many many K points. And what we did was we calculate the bunny function of this unperturbed system, and then construct the Hamiltonian using those localized funny function basis. And then we do the unitary transform and then we diagonalize the it and we find the energy agon vector and then, and then we can we can calculate the matrix elements involving these things easily. The first step was to vanyarize the system. And so, what we have to do is to find the bunny functions of the perturbed system. And from here, we can go to the eigenstates of the perturbed system. And since now we know both of these, we can subtract them, and then we can obtain the first order correction to the energy agon state. So that's the strategy. So, as I said, we first find the way function bunny functions for the perturbed system. We can calculate as we did for unperturbed system one can calculate the rear space matrix elements of different types using course grid. K points. And then one can calculate. So, just as we did for unperturbed system, calculate the matrix element of the using the bunny functions, we calculate the Hamiltonian matrix elements. And then we diagonalize it. And from that, we can obtain the perturbed energy agon states, as we did for unperturbed system. And using those perturbed energy agon states, we can calculate all the necessary matrix elements that many, many key points. So, it's exactly the same as unperturbed system, we just do it for perturbed system. And in order to find the bunny functions. The disentanglement is very important in this theory. Yeah, which you all know, so I'll just skip discussion. So, we have to choose the correct state states to make the bunny function, smoothly momentum space. And we will adopt this entanglement plus projection only scheme for the perturbed system to find the bunny functions for the perturbed system. What they did in this paper is to project to the initial guess at a given K point and they, yeah, they do this. And so states which have large overlap with this initial guess will have a large weight. So we choose the states, the block states that have large overlap with the initial guess. And for later use, we can change that into some vector R. And using the block theorem. This guy will speed out it to the minus I K that our factor. So this one cancels that one. So these two are equivalent. And then we do load in auto normalization. Which I learned from Andrea sitting over there while I was in Oxford. Thanks a lot. Yeah, we do the load in auto normalization. And then our weekend from that by performing free transform we can obtain the bunny function localized real space we do this. We collect the auto normalization process, assuming that they are very well localized, then we can just plug this into here. Okay. And this factor cancels that one so it's basically our initial guess, and then this projection operator. So that's that gives us the localize funny function. So this entanglement projection only and we will add inner window. So the idea is that we want this smaller window to be perfectly vanyarized, which means that it gives the correct value at course grid key points. And then above this window we choose the states which have maximal overlap with the initial guess. So we have this projector of the initial guesses. Okay. We calculate this overlap the yeah to the energy eigenstates above this inner energy window we don't do this for this below wave functions but we do this for above states. And it will be like that. Okay, so I just, yeah, subtract it, change this R to zero, and then have this factor here for the same reason. Yeah. And if you sum over R then it will give a delta function of K and K prime should be the same. And then the summation over I will be like this. So we sum over this projector, and we calculate the matrix elements of the block states above the inner energy window outside the inner energy window. And then diagonalize it and then find the eigenstates of the this occupation matrix, which has large largest eigenvalues, so which is large overlap with the initial case, and choose the correct number of states for each K point. And since we have a few below the energy and an inner energy window we will have just the, the total number of money functions minus minus or the initial guess minus the states inside the inner energy. Okay. So to find the money functions for the perturbed perturbed system. So these are done to find the money functions of the system so this entanglement projection only. Here is the important point. The unperturbed money functions are used as initial guesses. So, because the original system and the perturbed system will be very similar to each other. And yeah. And when the lambda goes to zero then they will be the same. So, these are used as initial guesses. And a smaller inner one has to choose a smaller inner energy window for reasons that will become clear in the next slide. So, yeah. So we have to reduce the energy, the exact inner energy window a little bit. And one should use the same outer window this entanglement window or even larger one. So this last condition guarantees, and although, and this using the entire funny functions as initial guesses guarantees continuity at lambda equals zero. So if the outer window for the perturbed perturbed by realization of the perturbed system is lower smaller than the outer window of the original system. Then we will not recover the original money functions because we don't have all those things so it will not be continuous at lambda equals zero so the outer window of the perturbed system should be the same or larger than the original outer window. Even if it is large at lambda equals zero it only picks up the states inside the original outer window. So it can be large. And this again is the this projection matrix elements where it's the same as the one that I have shown you before. G's the initial guesses are just the unperturbed bunny functions so we sum over I and R as we did before, and then we calculate the matrix elements and these are the states that decide states are the states of the perturbed system, which is exactly what we did for in the previous case. We will have the this zero third order one, which will just give us and the occupation ones for the unperturbed bunny functions. And then we have some extras here, of course, yeah, proportional to lambda. If our V has phone on with momentum q then it'll put, it'll have non vanishing matrix elements between K and K plus q and so on. But anyway, we diagonalize this. So we include all the states inside the inner window which is smaller than the original inner window. And then for other outer states, we choose like states which maximizes the overlap with the initial guess, we do exactly the same thing. So here. So this is the outer. This is the outer window, which in our case, we, we choose the same outer window for both perturbed and unperturbed system but our perturbed outer window can be larger than this. And it may be helpful in some cases. And this is the inner unperturbed inner window of the unperturbed system that we have. And then we, we choose the inner window of the perturbed system smaller than that. Right. In this energy range. Right. Sorry. Yeah. And then this is so what we do if we do what I just discussed, then we obtain these results, which is the first order correction to the bunny function localized funny function. Which this part is just a free a trans free transform to Vanya gauge, and then free transform to localized state. Sorry, so gauge transformation and then free transform. And here. So it will have a first order correction to the way from wave function. And then it projects to the window outside the disentanglement window so these high energy states. And so these guys will be obtained by solving sternum education for course cake with points. So this second piece, which is the, the same thing but projected onto this D minus W, D minus W is basically in this energy window. So, but this boundary between the states, the manifold of Vanya states, and the ones that not chosen in the Vanya states are not separated by energy. So, and so if our inner window was the same as the inner window of the unperturbed system. So, we may have a diverging divergence in here, because So it will connect. So this is for states inside the inner window. And if it connects to the states, if our inner sorry if our inner window was the same as the original inner window, then it will have some connection connecting to the states just outside this inner window. So, you might have some singularity in here, which will make the funny functions less localized. So by choosing the inner window of the perturb system smaller than the inner window of the original system, it prevents those singularities and makes the funny functions. Yeah, for this part we don't need Sternheimer, we, we, because yeah, we have finite number of states, we can calculate this thing by just using first-order perturbation theory. So, suppose that this dash curve is shows the Vanya function of the original system and this yellow one is the Vanya function of the slightly perturbed system. And so our new Vanya function is can be decomposing to the original Vanya function, 0th order one plus first order term, which is plus and minus here. And so this is the Vanya function for silicon with optical phonons that the atoms are moving this way and that way like that. And this was the original Vanya function. And so it looks like this sphere. And so, according to this movement, it will become like this, this look which looks like that. And so on. And also, this is the Vanya function for tungsten tell right. And this is the original Vanya function is seen polarized along plus z direction and it's some D like character. And then the perturbation is for J xx, which is the spin is along x direction and the velocity is also along x direction. So the velocity operator is like P, which is the derivative. So if you take the derivative along this direction, then it will look more or less like this. Okay. And also the is spin along x. So if you apply spin along x to the spinner polarized along plus z direction, you switch back to minus C. So our the the putter bunny function perturbation looks like this and it agrees with our physical intuition. And I will give you three examples. The first one is the indirect optical absorption in silicon. This is the silicon band structure. And although the direct gap is large. So optical absorption occurs below this direct gap and that is due to the indirect absorption through the health of phonons, either absorbing a phone or emitting a phone. And this is the experimental results. So the absorption spectroscopy below the this direct balance to conduction transition threshold. So it is easier. So at low energy. We can observe a phone and go to this conduction band states so the observing a phone on process starts at lower energy, Omega. So this is the observing phone on process. And then, when the photon energy is higher than emitting a phone can contribute to indirect absorption as well. So, at this point, at higher energy, both absorbing and absorption and emission participates in indirect absorption so the slope changes and there is a kink. Initially when T equal zero there is no absorption so the emission is strong is much stronger and as you increase the temperature, there will be more phonons so the phonon absorption process also increases and both absorption and emission increases and and also another thing is that as you increase the temperature the due to the electron phonon coupling the set the band gap decreases and that is why that is the origin of this red shift. Okay, so one has to, in order to understand this experimental result one has to calculate the phone on induced electron self energy at many, many key points. Okay, it's not alone. It's along some high symmetry directions, but one needs to calculate this at many, many key points. And, but that was not done before. And, by the way, they actually calculated this indirect absorption but they did temperature dependent arbitrary shift to compare with the experiment. This work done by Jacarjas, Patrick and Justino, they used some random configuration of a supercell and they designed very clever way to find the correct random configuration. Their calculation is non adiabatic because they look at the frozen atoms. And so, even if they can describe the decrease in the band gap, they cannot describe this kink, because there is no difference in their in this theory the phonon absorption or emission. And so far, there has been no theory that explains this without arbitrary shift and also that the explain these kink behaviors. So using our bunny function perturbation theory, we could explain these experimental results quite well. And sorry, so this is the last example. Okay, so this is the spin shift spin current of this material. And this thing here. So the blue curve is the bunny function perturbation theory result, and the orange curve is the bunny function interpolation results with some finite truncation. And the green curve is the difference between them and you can see that the difference is quite large. And here, we calculated the anomalous sorry, normal charge shift charge current. And there, because of the reason that we discussed there is an exact formalism. So our theory agrees with the exact formalism. And here there is no exact formalism like this one. So we cannot compare but we can see that the error is not negligible. And sorry, yeah, I'll move on to the second part and this part will be faster because the paper is shorter. Not that the paper is less important but yeah, shorter. So we're interested in the momentum space integration of these quantities, where the delta is the energy difference at the same k point between two different things. And this guy, the second one is comes from the energy conserving delta functions. So how to the tetrahedron method for this guy is very popular and is much used in different softwares. But to evaluate these things. So the energy conserving part but the non this this specific part of spectral functions. One has to do different tetrahedron. So we want to do tetrahedron method, but this part, the tetrahedron methods are not applied these days. So let me give you an example. This is a spin hole conductivity, and one has to evaluate these things. So in tetrahedron method what they what we do is that we make this part, the numerator, a linear function inside the tetrahedron, and also this delta, the energy difference between two bands, also a linear function within the tetrahedron. And depending on whether we have zero frequency or final frequency, it reduces to either this form or that form. And that form was not as, yeah, hasn't been studied before. So here's the theory on the this the non dissipative part tetrahedron method in 1981. And so, only type one not type three but this is part of the results so so this V are the energy difference at four different vertices and depending on which one of the energy differences, the vertices are the same, or not the same. They have formulas in eight different ways. But the difficulty of implementing this theory is that there is no criterion for when they are the same and when they when the energy differences are different. Maybe this is the reason these complications and also this is the reason why this method has not been used much or used in contemporary softwares. So the, let me describe the problem. So we know that this value in the limit x goes to zero is one. But the problem is that when we do this using computer when x is very small, like 10 to the minus, for example, in, if you're using a double precision, if actually smaller than 10 to the minus 16. Then this is no longer one, because yeah we cannot tell whether adding x to one is different than one as well. Yeah. So in our case, this x is the relative energy difference between the vertices I and J, where I and J are from one to four. So it's like the, the sum of the relative difference between these energy differences at two different k points in a, in a tetrahedron. So if this number is too small, which means that the energy values that difference values at two vertices are very similar to each other. It's pretty in reality is perfectly fine. There is no singularity at all. So the four, for example, if the energy eigenvalues at four vertices are the same, then it is, there is no singularities just easy. We can just calculate the integral easily, right. But in numerics, there is this problem so if the energy eigenvalues are very similar to each other, then we have really trouble. So our simple solution is that we assume that all the axis, the energy differences between different vertices are sufficiently large, and they're very different. And if the relative energy difference between two different vertices is below a criterion, and we force them with the energy eigenvalues to be different, we force them to be different. So that it's the same as the criteria. So the X remains above certain critical value. And so here we analyze the error for a single tetrahedron, evaluating the, the spinel conductivity. But we gave different energy values at these four vertices, many random different values and see how the exact value, how the error depends on the how close these energy eigenvalues are at the four vertices. And to calculate the error, we used quadruple precision, and then we compare with the double precision results. So if our, this critical value criteria is too large is one. So, if any, any vertices closer in energy than this, and we just make the difference large, then the problem is that. So, if the X value is smaller than this, this, the criterion, then we just, the error is remains very large, because, yeah, we use the force value. And so we reduce the criterion a little bit. And then the same thing happens when the X becomes smaller than the criterion, but now the error is smaller than this, this guy, right. So if anything happens and then the, the thing happens like this. But if our criterion is too small, then the logarithmic the problem of logarithm logarithm happens. So, this error increases before reaching the criterion. So, and, and it goes like that. So, which means that there is some optimal criterion value, depending on the precision of your, yeah, what you what precision you're using. Okay, so here's the comparison between adaptive smearing method and improved tetradron method. And so you can see so these are the imaginary part which you can neglect. And but these are the non dissipative part result and you can see that they converge at much faster rate. But this thing takes longer time so one is to also compare the time. Yeah, this is the result. So average wall clock time and the y axis is the error. And so this is the adaptive smearing method and this is the best tetradron method and you could see that at a given amount of time we can reduce the error by orders of magnitude in comparison with the adaptive smearing method. And also, he this one shows the, that there, we changed the, the criterion value and change the mesh size and then so how the error evolves and indeed there is some optimal range where the error is minimal. And he implemented this in his version of post funny 90 mi right. Yeah, okay. And he's considering to implement that in money a very so maybe that today, we could discuss further in this. Thanks, Jeremy, you asked me the question about degeneracy and actually it turns out that the degeneracy issue is not severe here because we add everything. So, each tetradron. It's psychologically is, I don't like it because if you ever do the trace over the degenerate bands then it will be smooth function. But if we don't do then it will be a rapidly varying function, but still if you add everything then it will be the same. But it's a big number, large number minus large number becomes small number so there could be some precision issue but we have tested means to test yesterday and so far we didn't find that but psychologically I want to do the trace some. Yeah, so thanks for the nice addition. So, this is the end of my talk. Yeah. Thank you for your. Thank you so much for this nice talk. So let's start with questions. It's possible also to add the block of corrections, because they, they also were in the usual boundary context, they, they improved accuracy quite, quite a lot. Sorry to add what the block of correction so you don't have a flat surface crossing tetradron but a curve one. So, so that means to us thought about it's a rather simple correction term in the usual format means to comment on that. So the blocks blocks correction does not work in this case because the blocks blocks correction was for analytic integrand, right. So, in this case, the integrand is linear function or linear function so it can be singular at some points. The blocks correction was by calcium, the calcium stream does not apply here. Thanks. More questions. I had some questions. Okay, first, very technical when you do this change of energy that vertices. So, to avoid this problem, do you need to do it consistently because one word is belongs to different children or it doesn't matter really mean so I don't remember. Can you comment on that. So, so you mean the change of energy. Different values. Different. But the change is applied in a single tetrahedron and calculating other tetrahedron. We use the original values. So you don't change. The change is confined to a single tetrahedron, I think, is that what you said, okay. Okay. Yeah, and that's the question. Instead you interpolate both of I'm still standing here just in case it means we'll answer. Okay, so you interpolate both the numerator and denominator so and it becomes quite as you say computationally more heavy. If you interpolate only the denominator the energy part. We would make calculation lighter and how much worth will become the convergence. That seems to be a very good question, but means to have you looked into that just changing the doing the interpolation for energy denominator. No, not yet but because the interpolation was not a bit but like so. So, I just, I just interpolated both of them. So it doesn't increase the competition time too much. No, but you in the talk you said that we see traffic in message it becomes like takes a longer time to compute. You said this so why is that. So, if you just do energy tetrahedron energy tetrahedron then does the competition time reduces in half or how much is will it be reduced do you have feeling for that. So cost computation. computational time as two contributions. Obtaining metrics elements or eigenvalues and the summation of tetrahedron over six and tetrahedron. So, the summation is more computational time and so so just interpolating both of them is not not equal to to the double double only interpolating energy eigenvalues. Okay, thank you. Normal questions. Just a general question about the first part of any function for the ration theory. So if I understood correctly. The motivation for this was those types of problems like spin hold on activities where you cannot recast the expressions in a geometric form involving K derivative so you cannot avoid doing the summation over states, is that correct. Yes. What are the other. Have you thought about which other problems are somehow this method is good for if it's spin related problems phones and what else. Yeah spin related problems phones and also the dynamical born effective charge is also falls into that category. Okay. Yeah. Okay, then we send that send the speaker game. Thank you. So now do we have some flash talks. Yeah. How many we have. For me. Yeah. Okay.