diff --git a/view/nav.py b/view/nav.py index 45d3d1d..086f527 100644 --- a/view/nav.py +++ b/view/nav.py @@ -17,7 +17,7 @@ icon=":material/bar_chart:", ) -pg = st.navigation([domain_page, spectrum_page]) +pg = st.navigation([spectrum_page, domain_page]) st.set_page_config( page_title=app_title, page_icon="🦈", diff --git a/view/simulation_fns.py b/view/simulation_fns.py index 0be0c48..93f099b 100644 --- a/view/simulation_fns.py +++ b/view/simulation_fns.py @@ -8,8 +8,7 @@ from cmtj import * from cmtj.models import LayerSB, Solver from cmtj.utils import FieldScan, VectorObj, mu0 -from cmtj.utils.procedures import (PIMM_procedure, ResistanceParameters, - VSD_procedure) +from cmtj.utils.procedures import PIMM_procedure, ResistanceParameters, VSD_procedure def create_single_domain(id_: str) -> Layer: @@ -138,7 +137,10 @@ def get_pimm_data( sim_time=16e-9, ): htheta, hphi = get_axis_angles(H_axis) - Hscan, Hvecs = FieldScan.amplitude_scan(Hmin, Hmax, Hsteps, htheta, hphi) + hmin, hmax = min([Hmin, Hmax]), max([Hmin, Hmax]) # fix user input + Hscan, Hvecs = FieldScan.amplitude_scan( + hmin, hmax, Hsteps, htheta, hphi, back=st.session_state["Hreturn"] + ) j, rparams = prepare_simulation() spec, freqs, out = PIMM_procedure( j, @@ -170,7 +172,8 @@ def get_vsd_data( Hoex_mag=500, ): htheta, hphi = get_axis_angles(H_axis) - Hscan, Hvecs = FieldScan.amplitude_scan(Hmin, Hmax, Hsteps, htheta, hphi) + hmin, hmax = min([Hmin, Hmax]), max([Hmin, Hmax]) # fix user input + Hscan, Hvecs = FieldScan.amplitude_scan(hmin, hmax, Hsteps, htheta, hphi) j, rparams = prepare_simulation() frequencies = np.arange(fmin, fmax, step=fstep) spec = VSD_procedure( diff --git a/view/streamlit_app.py b/view/streamlit_app.py index 08092c4..e22a499 100644 --- a/view/streamlit_app.py +++ b/view/streamlit_app.py @@ -113,14 +113,15 @@ "H axis", options=["x", "y", "z", "xy", "xz", "yz"], key="H_axis", index=0 ) st.number_input( - "Hmin (kA/m)", min_value=-1000.0, max_value=1000.0, value=-400.0, key="Hmin" + "Hmin (kA/m)", min_value=-1e6, max_value=1e6, value=-400.0, key="Hmin" ) st.number_input( - "Hmax (kA/m)", min_value=0.0, max_value=1000.0, value=400.0, key="Hmax" + "Hmax (kA/m)", min_value=-1e6, max_value=1e6, value=400.0, key="Hmax" ) st.number_input( "H steps", min_value=1, max_value=1000, value=50, key="Hsteps", format="%d" ) + st.checkbox("Back-and-forth-field (PIMM only)", value=False, key="Hreturn") st.number_input( "int_step", min_value=1e-14,