Skip to content

Kernel function

Sunil Anandatheertha edited this page Jan 20, 2021 · 26 revisions

Basic

Type

Example - 01

Custom kernel weight functions can be incorporated easily into the solver. On a square grid of size (K,L), say the sampled point is (k.l). In the calculation of Hamiltonian Hkl, the sampled point is taken as (i,j)=(2,2) having 8 first order nearest neighbours ((1,1) to (3,3), exluding (2,2)), where i,j=1,2,3. Here, a Kernel function is used to introduce anisotropic net non-zero moment into the sampling scheme. The kernel function used to demonstrate the capabilties in this paper is

Wij = Sij ((kijx)/(xijmAij )+(K_ij^y)/(y_ij^(n_ij ) ))^(Q_ij ) @ a given i & j, where, the matrices S_ij contains signs, K_ij^x ,K_ij^y and Q_ij contain constants, and x_ij^(m_ij ) and y_ij^(n_ij ) contain spatial coordinates raised by constants. IN this expression, common subscripts do not imply summation. The calculated weights are unit normalized as W ̅_ij=W_ij/(W_ij^' ), where, W_ij^' is the maximum of |W_ij |. For purposes of introducing flexibility, W_ij^' could be non-homogeneosuly rescaled by R as W ̅_ij=W_ij/(W_ij^' )R= W_ij/(W_ij^' )(L_ij+aR_((3,3))^R+bR_((3,3))^z+c), where, L_ij is a scalin g matrix having real values, a, b and c are real constants and R_((3,3))^R and R_((3,3))^z are 3X3 matrices having random real and integer numbers respectively. It should be noted the sub-scripts i and j used above are not the ones used to represent lattice sites in the Hamiltonian calculation. In MATLAB, they are input in “CODE NAME.m” as below:

Table 1: Example definitions of KWF parameters

Sij =

S_ij

Header 1 Header 2 Header 3
Some data
data Some long data here more data

S_ij K_ij^x K_ij^y sign = [+1 +1 +1; +1 +1 +1; +1 +1 +1]; xconst = [+1 +1 +1; +1 +1 +1; +1 +1 +1]; yconst = [+1 +1 +1; +1 +1 +1; +1 +1 +1]; m_ij n_ij Q_ij xpower = [1 1 1; 1 1 1; 1 1 1]; ypower = [1 1 1; 1 1 1; 1 1 1]; power = [-1 -1 -1; -1 -1 -1; -1 -1 -1]; L_ij+aR_((3,3))^R+bR_((3,3))^z+c MultipleOfNorm = [+1 +1 +1; +1 +1 +1; +1 +1 +1] + 0.0rand(3,3) - 0.0 + 0.0randi(2,3);

Clone this wiki locally