def compute_scalar_potential_native_gcr(mesh, m_expr=df.Constant([1, 0, 0]), Ms=1.0): gcrdemag = Demag("GCR") V = df.VectorFunctionSpace(mesh, "Lagrange", 1) m = Field(V, value=m_expr) m.set_with_numpy_array_debug(helpers.fnormalise(m.get_numpy_array_debug())) gcrdemag.setup(m, Ms, unit_length=1) phi1 = gcrdemag.compute_potential() normalise_phi(phi1, mesh) return phi1
def compute_scalar_potential_llg(mesh, m_expr=df.Constant([1, 0, 0]), Ms=1.): S3 = df.VectorFunctionSpace(mesh, "Lagrange", 1, dim=3) m = Field(S3, value=m_expr) m.set_with_numpy_array_debug(helpers.fnormalise(m.get_numpy_array_debug())) demag = Demag() demag.setup(m, Field(df.FunctionSpace(mesh, 'DG', 0), Ms), unit_length=1) phi = demag.compute_potential() normalise_phi(phi, mesh) return phi