#!/usr/bin/env python3
"""
GISAS of cylinders with a magnetic material at zero field.

A cylinder is assigned a magnetic material with a zero magnetic field
vector. The unpolarized simulation is expected to agree with the
non-magnetic case, verifying that zero-field magnetic materials reduce
to ordinary refraction.
"""
import bornagain as ba
from bornagain import ba_plot as bp, deg, nm, R3


def get_sample():
    vacuum = ba.Vacuum()
    substrate_color = (0.28, 0.57, 0.82)
    substrate_mat = ba.RefractiveMaterial("Substrate", substrate_color, 6e-6, 2e-8)
    particle_color = (0.86, 0.24, 0.18)
    particle_mat = ba.RefractiveMaterial(
        "MagParticle", particle_color, 6e-4, 2e-8, R3(0, 0, 0))

    ff = ba.Cylinder(5*nm, 5*nm)
    particle = ba.Particle(particle_mat, ff)

    vacuum_layer = ba.Layer(vacuum)
    vacuum_layer.deposit2D(ba.Dilute2D(0.001, particle))
    substrate_layer = ba.Layer(substrate_mat)

    sample = ba.Sample()
    sample.addLayer(vacuum_layer)
    sample.addLayer(substrate_layer)
    return sample


<%= include_partial("template/sim/gisas_standard_wide.py") -%>


<%= include_partial("template/main/runsim_unitaspect.py",
    "ba.showSample3D(sample, sample_size=120*nm, seed=0)") -%>
