コード例 #1
0
ファイル: test_anis.py プロジェクト: whshangl/finmag
def test_anisotropy():
    mesh = df.IntervalMesh(1, 0, 1)
    sim = Simulation(mesh, Ms, unit_length=1e-9)
    sim.set_m((mx, my, mz))

    sim.add(UniaxialAnisotropy(K1, axis=[1, 0, 0]))

    expected = 2 * K1 / (mu0 * Ms) * mx
    field = sim.effective_field()
    assert abs(field[0] - expected) / Ms < 1e-15
コード例 #2
0
ファイル: test_anis.py プロジェクト: whshangl/finmag
def cubic_anisotropy(K1=520e3, K2=0, K3=0):
    mesh = df.RectangleMesh(df.Point(0, 0), df.Point(50, 2), 20, 1)

    sim = Simulation(mesh, Ms, unit_length=1e-9)
    sim.set_m(m_init)

    sim.add(
        CubicAnisotropy(K1=K1,
                        K2=K2,
                        K3=K3,
                        u1=(1, 0, 0),
                        u2=(0, 1, 0),
                        assemble=False))

    field1 = sim.effective_field()