Skip to content

Implement isotropic peak broadening to isotropic pseudo-Voigt profile - #75

Open
clemisch wants to merge 3 commits into
vincefn:masterfrom
clemisch:scherrerP-clean
Open

Implement isotropic peak broadening to isotropic pseudo-Voigt profile#75
clemisch wants to merge 3 commits into
vincefn:masterfrom
clemisch:scherrerP-clean

Conversation

@clemisch

@clemisch clemisch commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

It already exists in the anisotropic pseudo-Voigt profile in objcryst.

I added it to the isotropic profile because

  • the effect is isotropic
  • isotropic pseudo-Voigt is the only profile currently exposed to pyobjcryst

This broadening model is very limited and the resulting P value converted to apparent crystallite size should be taken very qualitatively.

It might still be useful to have this model to get a good fit, if you're sure observed peak broadening is coming from small crystallites, as the 2θ dependence is very different to existing per-phase Caglioti params U,V,W (which otherwise might be used to account for such effects empirically).

All of this to say: I understand if this addition is deemed not sensible, but for me is has been useful in practice, so here it is.

clemisch added 3 commits July 21, 2026 11:44
existed already in anisotropic Pseudo-Voigt profile type.
because it's isotropic, add it to default isotropic Pseudo-Voigt.
mainly because this is already exposed to Python.
@clemisch

Copy link
Copy Markdown
Collaborator Author

Ah, there is a difference to the anisotropic profile: it uses P to broaden only the Gaussian component (because it has a split pseudo-Voigt with Gaussian U,V,W and Lorentzian X,Y params).

The isotropic PV profile only has shared U,V,W for FWHM and the mixing parameters Eta*. So here, the P term broadens the shared FWHM, which makes its way into Gaussian and Lorentzian components.

...this means it's sensible in practice to activate Eta refinement if P is active.

Maybe, ultimately, it's better to expose the more powerful anisotropic PV to pyobjcryst?

@vincefn

vincefn commented Jul 21, 2026

Copy link
Copy Markdown
Owner

Yes, I think it'd be better to expose the anisotropic PV to pyobjcryst - it can still be used without activating the anisotropic terms.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants