dirac_solver 0.0.1
A Dirac ecuation Solver
Cargando...
Buscando...
Nada coincide
PeriodicBoundary.h
Ir a la documentación de este archivo.
1#pragma once
2
3#include "BoundaryCondition.h"
4
14public:
27 void apply(std::vector<Dirac::Spinor>& psi, const Grid& grid) const override {
28 if (psi.size() < 2) return; // No aplicable para mallas con menos de 2 puntos.
29
30 // En un caso simple, copiaríamos los valores, por ejemplo:
31 // psi.front() = psi.back();
32 // Pero para una malla escalonada, esta lógica es más compleja y se maneja mejor
33 // dentro del bucle numérico. Esta función sirve como un marcador de posición
34 // y confirmación de la implementación del patrón de estrategia.
35 }
36
41 std::string get_name() const override {
42 return "PeriodicBoundary";
43 }
44};
Clase base abstracta para condiciones de borde (patrón Strategy).
Definition BoundaryCondition.h:17
Representa una malla espacial (1D, 2D o 3D) para la simulación.
Definition Grid.h:16
Implementa condiciones de borde periódicas.
Definition PeriodicBoundary.h:13
std::string get_name() const override
Devuelve el nombre de la estrategia de condición de borde.
Definition PeriodicBoundary.h:41
void apply(std::vector< Dirac::Spinor > &psi, const Grid &grid) const override
Aplica condiciones de borde periódicas al campo. En el esquema FDTD, esto generalmente se maneja en e...
Definition PeriodicBoundary.h:27