10

Here I have an example: x = linspace(-5,5,100); y = linspace(-5,5,100); z = linspace(-5,5,100); [X, Y, Z] = meshgrid(x, y, z); Ex = sin(2*pi/5*Z); Ey = 0*X; Ez = 0*X; [Bx, By, Bz, V] = curl(X, Y, Z, Ex, Ey, Ez); Eplot = 0*x; Bplot = 0*x; for i=1:100 %% Integration-like procedure Eplot(i) = mean(mean(Ex(:,:,i),1),2); Bplot(i) = mean(mean(By(:,:,...


6

deal.II (see http://www.dealii.org/) does support Nedelec elements and, as a consequence, can solve the problems you're interested in. (Full disclaimer: I'm one of the principal developers of deal.II.)


5

If you have simple, grid-aligned interior objects or accuracy is not crucial then stick with the method you have described. If you need to accurately represent arbitrary boundary shapes then you're probably best off moving to a (more complicated) finite element approach on an unstructured grid. You have described the simplest approach to solving this ...


5

Since the problem is treated in subdomains-poisson for the case, where the mesh is aligned with the interface, I assume in the following that in your case the jump can occur anywhere. I think the first step here is not to think about implementation FEniCS, but rather to find an adequate variational form for this problem, where the interface conditions are ...


5

I've found that if I reduce the radial domain to $8 \leq r \leq 20$, the condition number drops to ~10,000. This makes me think I need to scale my problem. I'm not sure how to do this, however, and I need to do it right. Nondimensionalization is partly repeated application of the chain rule, and partly art. The goal is to make as many quantities in your ...


5

A classic paper for evaluation of the integrals commonly present in computational electromagnetics (EM) is: D. R. Wilton, S. M. Rao, A. W. Glisson, D. H. Schaubert, O. M. Al-Bundak, and C. M. Butler, "Potential integrals for uniform and linear source distributions of polygonal and polyhedral domains," IEEE Trans. Antennas Propag., vol. AP-32, no. 3, pp. 276-...


5

The Maxwell system is a wave equation at heart, so your ansatz (the space where you seek solutions, the combination of your mesh and basis functions) must be able to faithfully represent waves. The Nyquist criterion sets an absolute lower limit to the "sample rate" of your mesh: two points per wavelength. In practice, you must upsample by a considerable ...


5

There are basically two methods: You can disrectize the angular part via grid points, or you can discretize it via basis expansion. I will focus on spherical symmetry here, the cylindrical case is quite similar. In the basis expansion approach, one applies the ansatz $$ v(x,t) = \sum_{klm} a_{klm}(t)\,R_{klm}(r)\, Y_{lm}(\theta,\phi) $$ This is inserted ...


4

So Is it neccesary to use Poisson - Boltzmann equation if I only need to build electrostatic potential from a PQR file? No. You can use Poisson. Since you know the positions of each point charge, you know the charge distribution $\rho$, which is a sum of delta functions. You can thus solve numerically the Poisson's equation that links the charge ...


4

Hypre has several built-in preconditioners for solving the Maxwell equations. There are several packages that interface to it (you can use hypre from PETSc) as a solver for linear algebraic systems, but it also has a structured grid and finite element interface too.


4

Vatiational formulation of Poisson problem with $\varepsilon \in L^\infty$ Both interfacial conditions are incorporated in following variational problem. Given $\Omega$ Lipschitz domain $\partial\Omega = \Gamma_\mathrm{D} \cup \Gamma_\mathrm{N}$ $V=\{v\in H^1(\Omega); v|_{\Gamma_\mathrm{D}}=0 \} $ $\varepsilon\in L^\infty(\Omega)$ $g \in L^2(\Gamma_\...


4

I believe what you are looking for is a sympletic method; see: http://en.wikipedia.org/wiki/Symplectic_integrator They are designed to conserve energy exactly; however by trading up for accuracy one area, your simulation will have greater errors in other quantities (i.e. position as a function of time) compared to your usual Runge-Kutta methods.


4

As for any other domain, your mesh needs to be fine enough to resolve the features you have. This means that the mesh has to be finer than the geometric details of your unit cell, and it needs to be finer than the wavelengths of the waves you consider. Beyond this, the question of tets vs hexes is a minor issue. Hexes are generally more accurate, but if the ...


4

When you call Lapack's zgtsv, it doesn't just solve a tridiagonal system $Ax=b$. What it does first is perform an LU factorization (zgttrf) $A = LU$, where $L,U$ are lower- and upper-tridiagonal matrices, and only then proceeds to solve $LUx=b$. When you give it the lower, main, and upper diagonals of the matrix $A$, those diagonals are overwritten by the ...


4

Interesting question. I would expect the Yee scheme to be indifferent to static (bias) fields induced by constant potentials. In the electrostatic case, if you have a constant electric potential $\phi$, it induces a field $\vec E = \nabla \phi$. The update equation is (modulo constants) $\frac{d}{dt}\vec B = \nabla \times \vec E$. But since $\vec E$ is a ...


3

One issue (and this is mentioned by Mur in the first paper you linked in the comments above) is the fact that, while these edge functions provide tangential field continuity across interfaces and zero divergence within each element, they also allow for discontinuities in normal fields across interfaces. This behavior is non-physical, giving rise to ...


3

For this purpose you need to use a simulation software. One of the most common methods in Electromagnetics would be Finite element method, but you can also find Boundary Element Methods or Finite Difference Methods. Some common software in EM are Ansys Maxwell; and CST Studio A lot of people is also using COMSOL Multiphysics. But I would say that this ...


3

Further research eventually yielded the Boris method. For a constant B field it produces stable circular orbits.


3

Have a look on these three: Piernik MHD it is a code which evolved from the Pen & Trac MHD you mentioned in your question. Now its quite mature and the development is still active. Written in modern Fortran 95/2003. Godunov MHD an MHD code designed especially for simulating the reconnection events, but can be easily modified and applied to other ...


3

The Van der Walls radius - last column in the output - is calculated from the force field. Probably pdb2pqr and editconf uses different force fields, hence different radius. I don't use pdb2pqr, but it seems (1) AMBER99 is the default force field, though CHARMM, PARSE and TYL06 are supported. Gromacs' editconf reads force field from topology file generated ...


3

From what I understand, you'd like to see which numerical method best simulate the real physics relevant for a particular problem. MHD spans a wide scale of phenomena -- plasma physics (on length scales of ions and electrons) to ideal MHD (on the length scale relevant to accretion disks around blackhole or other compact objects). In this case, it's advisable ...


3

ANSYS Maxwell is a Finite Element solver for Electromagnetism. So, I assume that you are looking for a Finite Element package that has a Python interface (or is written in Python). There are some popular options like: SfePy; FEniCS; and Agros2D. The last one provides a Python interface and a (nice) graphic interface, and is based in Hermes2D (so it ...


3

The paper: I. Anjam, J. Valdman, "Fast MATLAB assembly of FEM matrices in 2D and 3D: Edge elements", Applied Mathematics and Computation, 267, (2015), 252–263; states the following. http://www.sciencedirect.com/science/article/pii/S0096300315004191 "A finite element discretization is done in terms of edge elements, typically Raviart–Thomas elements [12] for ...


3

It's an interesting question - how does a dipole actually move? It seems to me you're not entirely sure what to expect, so we need to get a solid test case where we understand what's actually going on. On a related note, do try to add your imports and initial conditions the next time :) For now, let's assume both masses equal and opposite charges. We can ...


3

Your questions suggest that you are new to implementing solvers for PDEs, and that you are not familiar with the usual data structures and algorithms used in this field. It would probably be very useful for you to see how other people write codes like the one you are trying to write, because you will see how they arrange data, how they represent geometry and ...


3

You're looking for waveguide port boundary conditions. I think the most accessible treatment is within Jin & Riley's Finite Element Analysis of Antennas and Arrays, Chapter 5. It's available on Amazon, see https://www.amazon.com/dp/0470401281/. A lot of these formulations were first introduced by Jin-Fa Lee, you can find his works in IEEE Microwave ...


3

Regarding simulation: There are several commercial solvers that might be helpful. A very popular FDTD Maxwell equation solvers for nanophotonics is Lumerical. It features opto-thermal and liquid crystal (which I would say is another keyword you should consider) simulations that should be very relevant. Another go-to multiphysics solver would be COMSOL. ...


3

I received a solution to this question from MATLAB's community. Essentially, I need to specify which contour lines to plot using the 'levels' spot on the 'contour()' command. Levels allows you to not only choose how many but which lines to plot. If you define a vector such as vlevel = linspace(20, 65, 10); and then place it in the 'levels' spot of ...


3

You don't need symbolic variables to compute the approximated potential for your Riemann sums. You can just use meshgrid to evaluate the potential in each point of interest. For the electric field, you can just compute the derivative analytically and then repeat the process for each component or compute a numerical gradient with gradient. There are better ...


Only top voted, non community-wiki answers of a minimum length are eligible