mantidproject / mantid

Main repository for Mantid code
https://www.mantidproject.org
GNU General Public License v3.0
207 stars 121 forks source link

Feature request: crystal field heat capacity calculation in applied magnetic field #34669

Open mducle opened 1 year ago

mducle commented 1 year ago

Is your feature request related to a problem? Please describe. Currently, Mantid allows the calculation and fitting of certain crystal field-derived physical properties in conjunction with INS spectra. One of these is the magnetic heat capacity using the CrystalFieldHeatCapacity function. However, this function only models the crystal field contribution to the heat capacity at zero applied magnetic field.

A user (D. Adroja, ISIS) has recently asked to fit heat capacity data he has that was measured with an applied field of 10 Tesla.

Describe the solution you'd like The implementation of a heat capacity calculation in an applied magnetic field would follow similar calculations for the magnetic calculations in the CrystalFieldMoment function. Specifically, the CrystalFieldHeatCapacity function would need additional attributes Hdir (applied field direction), Hmag (applied field magnitude), unit (the unit of the magnetic field, could be Tesla (SI, bohr) or Gauss (cgs) following conventions in CrystalFieldMoment), and powder (if the sample was a powder).

Then line 79 of CrystalFieldHeatCapacity should be modified to use calculateZeemanEigensystem instead of calculateEigensystem (there would also need code to figure out the H argument to this from the Hmag and Hdir attributes. A powder averaging over the main x, y, z field directions should also be implement analogously to CrystalFieldMoment.

Describe alternatives you've considered An alternative implementation is to make the BextX, BextY, and BextZ parameters per-dataset variable like Temperatures and FWHMs in the CrystalField class - the code needs to be checked that these are fed through to the calculation of the Hamiltonian in CrystalFieldHeatCapacity though.

Additional context None

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had activity in 6 months. It will be closed in 7 days if no further activity occurs. Allowing issues to close as stale helps us filter out issues which can wait for future development time. All issues closed by stale bot act like normal issues; they can be searched for, commented on or reopened at any point. If you'd like a closed stale issue to be considered, feel free to either re-open the issue directly or contact a developer. To extend the lifetime of an issue please comment below, it helps us see that this is still affecting you and you want it fixed in the near-future. Extending the lifetime of an issue may cause the development team to prioritise it over other issues, which may be closed as stale instead.

mducle commented 1 year ago

Bump...

github-actions[bot] commented 8 months ago

This issue has been automatically marked as stale because it has not had activity in 6 months. It will be closed in 7 days if no further activity occurs. Allowing issues to close as stale helps us filter out issues which can wait for future development time. All issues closed by stale bot act like normal issues; they can be searched for, commented on or reopened at any point. If you'd like a closed stale issue to be considered, feel free to either re-open the issue directly or contact a developer. To extend the lifetime of an issue please comment below, it helps us see that this is still affecting you and you want it fixed in the near-future. Extending the lifetime of an issue may cause the development team to prioritise it over other issues, which may be closed as stale instead.

mducle commented 8 months ago

Bump