suter_a 66aa847b58 PFitter: replace TObjArray/TObjString with PStringUtils
Replace ROOT's TString::Tokenize() + TObjArray/TObjString token
handling with the dependency-free PStringUtils::Split() across all
command/theory parsing in PFitter (GetPhaseParams, GetParFromFun,
CheckCommands and the Execute* helpers). Split() mirrors Tokenize()
semantics (delimiter-set, skips empty tokens), so token counts and
indices are unchanged. Each token is still copied into a TString,
so the downstream Atoi/Atof/IsFloat/IsDigit/Contains/CompareTo logic
stays as-is.

Using a std::vector<std::string> removes the manual TObjArray
cleanup and incidentally fixes three pre-existing leaks: the
tokens array in ExecuteFitRange was never freed, and the early
return paths in ExecutePrintLevel and the SECTOR check in
CheckCommands skipped the cleanup.

Build of libPMusr and musrfit is clean; full ctest suite passes
(85/85).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 15:38:15 +02:00
2026-04-15 20:29:55 +02:00
2019-05-15 10:14:39 +02:00
2026-05-28 09:30:52 +02:00
2026-05-28 09:30:52 +02:00
2025-10-15 07:58:50 +02:00
2025-11-06 14:13:08 +01:00

musrfit - muSR and beta-NMR data analysis package

Contents

This is a data analysis package to analyze time differential muSR and beta-NMR data. Currently it allows the following:

  • set up most commonly used fitting functions for muSR and beta-NMR
  • fit data, including global fits
  • show the fit results and the residuals
  • show the Fourier transform of the data
  • easily extract the fit parameters and import in other programs (gnuplot, qtiplot/origin, ...)
  • generate input fitting files for follow-up runs
  • generate global input fitting files based on a single run template
  • implement more sophisticated user functions (e.g. GL vortex lattice, Meissner screening including low-energy muon stopping profiles)

Currently supported platforms:

Documentation

For a more exhaustive user documentation see:

https://lmu.pages.psi.ch/musrfit-docu/index.html

Contacts

andreas.suter@psi.ch

For the beta-NMR related parts, please contact Zaher Salman zaher.salman@psi.ch

2025-06-08 11:00:15 +02:00
Languages
C++ 88.3%
Wolfram Language 6.5%
C 2.5%
CMake 1.7%
Perl 0.5%
Other 0.4%