version 0.012


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

    Instituto de Ciencias Físicas, UNAM
    Apartado Postal 48-3
    62251 Cuernavaca, Morelos


   use Photonic::LE::S::AllH;
   my $iter=Photonic::LE::S::AllH->new(
       epsilon=>$e, geometry=>$geometry,nh=>$Nh, keepStates=>$save);
   my $haydock_as=$iter->as;
   my $haydock_bs=$iter->bs;
   my $haydock_b2s=$iter->b2s;
   my $haydock_states=$iter->states;


Iterates the calculation of Haydock coefficients and states and saves them for later retrieval.


  • new(epsilon=>$e, geometry=>$g, nh=>$nh, keepStates=>$k)

    Initializes an Ph::NR::NP::AllH object. $nh is the maximum number of desired coefficients, $k is a flag, non zero to save the Haydock states. All other arguments are as in Photonic::LE::S::OneH.

  • run

    Runs the iteration to completion

  • All the Photonic::LE::S::OneH methods

ACCESORS (read only)

  • nh

    Maximum number of desired Haydock 'a' coefficients and states. The number of b coefficients is one less.

  • keepStates

    Flag to keep (1) or discard (0) Haydock states

  • states

    Array of Haydock states

  • as

    Array of Haydock a coefficients

  • bs

    Array of Haydock b coefficients

  • b2s

    Array of Haydock b coefficients squared

  • All the Photonic::LE::S::OneH methods