tetrax.experiments package#
Submodules#
tetrax.experiments.calculate_absorption module#
- tetrax.experiments.calculate_absorption.calculate_absorption(sample, exp_name, dispersion, antenna, fmin, fmax, Nf, k_calc)#
- tetrax.experiments.calculate_absorption.calculate_linewidhts(sample, exp_name, dispersion, k_calc)#
Internal function that calculates linewidhts from existing mode profiles.
- tetrax.experiments.calculate_absorption.get_ellipticy_factor(mode_loc, Lambda, dA, return_norm=False) float #
Obtains the ellipticity factor of given mode profile. This factor is important to calculate modal linewidths.
- Parameters
- mode_loc
MeshVector
Mesh vector of shape (N,2). Mode profile in local frame of reference.
- Lambda
csr_matrix
Sparse matrix of size (2*N,2*N) containing the cross product with the equilibrium magnetization in the local frame of reference.
- dA
MeshScalar
Volume/area elements of mesh.
- return_normbool
Apart from ellipticity coefficient, also return normalization factor of mode (multiplied with volume)
- mode_loc
- Returns
tetrax.experiments.eigen module#
- tetrax.experiments.eigen.calculate_normal_modes(sample, Bext, exp_name, kmin=- 40000000.0, kmax=40000000.0, Nk=81, num_modes=20, k=None, no_dip=False, h0_dip=False, num_cpus=1, save_modes=False, save_local=False, save_magphase=False, perturbed_dispersion=False, save_stiffness_fields=False, verbose=True, linewidhts=False)#
2D version
- tetrax.experiments.eigen.modes_per_k(N_exc, N_uni, N_cub, N_DMI, N_iDMI, N_uDMI, N_iec, h0, h0_avrg, Lambda, rotation, rotation_T, bndint_order, D_tot, v0, no_dip, scale, Msat, gamma, sample, num_modes, modes_path, save_modes, save_local, save_magphase, perturbed_dispersion, save_stiffness_fields, is_AFM, linewidhts, k)#
- tetrax.experiments.eigen.not_implemented_eigensolver(sample, Bext, exp_name, kmin=- 40000000.0, kmax=40000000.0, Nk=81, num_modes=20, k=None, no_dip=False, num_cpus=1, save_modes=False, save_local=False, save_magphase=False)#
- tetrax.experiments.eigen.test_rotation(mag, rotation, nx)#
Test of rotation matrix and equilibrium vector match, i.e. rotation rotates mag into the z direction.
tetrax.experiments.relax module#
- tetrax.experiments.relax.energy_per_length_spherical(mag_spherical, nx, dA, h_ext, N, N_cub, convert_to_cartesian, scalar_product)#
- tetrax.experiments.relax.jac_spherical_afm(mag_spherical, nx, dA, h_ext, N, N_cub, convert_to_cartesian, scalar_product)#
- tetrax.experiments.relax.jac_spherical_fm(mag_spherical, nx, dA, h_ext, N, N_cub, convert_to_cartesian, scalar_product)#
- tetrax.experiments.relax.minimize_gibbs_free_energy(sample, Bext, tol_cg, return_last=False, continue_with_least_squares=False, verbose=True)#
- tetrax.experiments.relax.not_implemented_minimizer(sample, Bext, tol_cg, return_last=False, continue_with_least_squares=False)#