- COPYRIGHT NOTICE
- ACCESORS (read only)
- INTERNAL METHODS
Photonic - A perl package for calculations on photonics and metamaterials.
Copyright (C) 1916 by W. Luis Mochán
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA
firstname.lastname@example.org Instituto de Ciencias Físicas, UNAM Apartado Postal 48-3 62251 Cuernavaca, Morelos México
use Photonic::LE::S::OneH; my $nr=Photonic::LE::S::OneH->new(epsilon=>$epsilon, geometry=>$geometry); $nr->iterate; say $nr->iteration; say $nr->current_a; say $nr->next_b2; my $state=$nr->nextState;
Implements calculation of Haydock coefficients and Haydock states for the calculation of the non retarded dielectric function of arbitrary periodic N component systems in arbitrary number of dimensions. One Haydock coefficient at a time. Use k,-k spinors. MQ notes.
new(epsilon=>$e, geometry=>$g[, smallH=>$s])
Create a new Photonic::LE::S::OneH object with GeometryG0 $g, dielectric function $e and optional smallness parameter $s.
A PDL::Complex PDL giving the value of the dielectric function epsilon for each pixel of the system
A Photonic::Geometry object defining the geometry of the system, the charateristic function and the direction of the G=0 vector. Should be given in the initializer.
B ndims dims r G GNorm L scale f
Accesors handled by geometry (see Photonic::Geometry)
A small number used as tolerance to end the iteration. Small negative b^2 coefficients are taken to be zero.
previousState currentState nextState
The n-1-th, n-th and n+1-th Haydock states; a complex 2-spinor for each reciprocal vector.
The n-th Haydock coefficient a
current_b2 next_b2 current_b next_b
The n-th and n+1-th b^2 and b Haydock coefficients
Number of completed iterations
Performs a single Haydock iteration and updates current_a, next_state, next_b2, next_b, shifting the current values where necessary. Returns 0 when unable to continue iterating.
Apply the Hamiltonian operator to state in reciprocal space. State is ri:pm:nx:ny... The operator is the longitudinal dielectric response in reciprocal-spinor space.
Returns the inner (Euclidean) product between states in reciprocal and spinor space.
Returns the magnitude of a state by taking the square root of the inner product of the state with itself.
Returns 0, as there is no need to change sign.
Returns the fisrt state.