Arts2 { Wigner6Init(wigner_initialized, 40000, 100) # Set lines and species abs_speciesSet(species=["O2-Z-66"]) ReadXML(abs_lines, "testdata/zeeman-lines.xml") abs_lines_per_speciesCreateFromLines zeeman_linerecord_precalcCreateFromLines # Initialize standard inputs isotopologue_ratiosInitFromBuiltin partition_functionsInitFromBuiltin VectorNLinSpace(f_grid, 501, 99.99e9, 100.01e9) Touch(rtp_nlte) NumericSet(lm_p_lim, 0) IndexSet(propmat_clearsky_agenda_checked, 1) AtmosphereSet3D IndexSet(stokes_dim, 4) IndexSet(nlte_do, 0) # Set atmospheric variables NumericSet(rtp_pressure, 10) NumericSet(rtp_temperature, 215) VectorSet(rtp_vmr, [0.21]) VectorSet(rtp_mag, [25e-6, 60e-6, 10e-6]) VectorSet(rtp_los, [60, 50]) # Test variables ArrayOfPropagationMatrixCreate(test) ## Silly parameters that have to be set by agendas and ARTS in general but are completely useless for these calculations VectorSet(p_grid, [150]) # We have no grid VectorSet(lat_grid, [0]) # We have no grid VectorSet(lon_grid, [0]) # We have no grid IndexSet(atmosphere_dim, 3) # We have no atmosphere MatrixSet(sensor_pos, [0, 0, 0]) # We have no sensor sensorOff # We have no sensor IndexSet(propmat_clearsky_agenda_checked, 1) # We have no propmat agenda ## Set up partial derivatives jacobianInit jacobianAddTemperature(g1=[150], g2=[0], g3=[0], dt=0.01) jacobianAddAbsSpecies(g1=[150], g2=[0], g3=[0], species="O2-66", for_species_tag=0) jacobianAddWind(g1=[150], g2=[0], g3=[0], dfrequency=0.1) jacobianAddMagField(g1=[150], g2=[0], g3=[0], component="u") jacobianAddMagField(g1=[150], g2=[0], g3=[0], component="v") jacobianAddMagField(g1=[150], g2=[0], g3=[0], component="w") jacobianAddMagField(g1=[150], g2=[0], g3=[0], component="strength") jacobianClose propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat.xml") #WriteXML("ascii", dpropmat_clearsky_dx, "testdata/zeeman/dpropmat.xml") ReadXML(test, "testdata/zeeman/propmat.xml") CompareRelative(test, propmat_clearsky, 1e-6) ReadXML(test, "testdata/zeeman/dpropmat.xml") CompareRelative(test, dpropmat_clearsky_dx, 1e-6) jacobianOff NumericSet(rtp_temperature, 215.01) propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat_dT.xml") ReadXML(test, "testdata/zeeman/propmat_dT.xml") CompareRelative(test, propmat_clearsky, 1e-6) NumericSet(rtp_temperature, 215) VectorSet(rtp_vmr, [0.21001]) propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat_dvmr.xml") ReadXML(test, "testdata/zeeman/propmat_dvmr.xml") CompareRelative(test, propmat_clearsky, 1e-6) VectorSet(rtp_vmr, [0.21]) VectorNLinSpace(f_grid, 501, 99.9901e9, 100.0101e9) propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat_df.xml") ReadXML(test, "testdata/zeeman/propmat_df.xml") CompareRelative(test, propmat_clearsky, 1e-6) VectorNLinSpace(f_grid, 501, 99.99e9, 100.01e9) VectorSet(rtp_mag, [25.01e-6, 60e-6, 10e-6]) propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat_du.xml") ReadXML(test, "testdata/zeeman/propmat_du.xml") CompareRelative(test, propmat_clearsky, 1e-6) VectorSet(rtp_mag, [25e-6, 60.01e-6, 10e-6]) propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat_dv.xml") ReadXML(test, "testdata/zeeman/propmat_dv.xml") CompareRelative(test, propmat_clearsky, 1e-6) VectorSet(rtp_mag, [25e-6, 60e-6, 10.01e-6]) propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat_dw.xml") ReadXML(test, "testdata/zeeman/propmat_dw.xml") CompareRelative(test, propmat_clearsky, 1e-6) VectorSet(rtp_mag, [25e-6, 60e-6, 10e-6]) VectorScale(rtp_mag, rtp_mag, 1.001) propmat_clearskyInit propmat_clearskyAddZeeman #WriteXML("ascii", propmat_clearsky, "testdata/zeeman/propmat_dH.xml") ReadXML(test, "testdata/zeeman/propmat_dH.xml") CompareRelative(test, propmat_clearsky, 1e-6) VectorSet(rtp_mag, [25e-6, 60e-6, 10e-6]) }