torchref.refinement.targets.xray.maximum_likelihood module

class torchref.refinement.targets.xray.maximum_likelihood.MaximumLikelihoodXrayTarget(data=None, model=None, scaler=None, use_work_set=True, sigma_mode='raw', verbose=0)[source]

Bases: XrayTarget

Maximum Likelihood target function with proper centric/acentric handling.

forward(fcalc=None)[source]

Compute maximum likelihood loss.

Parameters:

fcalc (torch.Tensor, optional) – Pre-computed structure factors. If provided, uses these instead of computing from model.

Returns:

Mean ML loss value.

Return type:

torch.Tensor

torchref.refinement.targets.xray.maximum_likelihood.create_xray_target(data=None, model=None, scaler=None, mode='gaussian', use_work_set=True, sigma_mode='raw', sigma_m_scale=1.0, verbose=0, device=None)[source]

Factory function to create X-ray target.

Parameters:
  • data (ReflectionData) – Reference to ReflectionData object. Required for forward().

  • model (Model or ModelFT, optional) – Reference to Model object for F_calc computation. If None, fcalc must be provided when calling forward().

  • scaler (Scaler, optional) – Reference to Scaler object.

  • mode (str, optional) – Target mode: ‘gaussian’, ‘ls’, or ‘ml’. Default is ‘gaussian’.

  • use_work_set (bool, optional) – Use work set (True) or test set (False). Default is True.

  • sigma_mode (str, optional) – ‘effective’ (default) to use per-shell effective sigmas from the scaler (SIGMAA-style, robust), or ‘raw’ to use raw experimental sigmas from the data file.

  • verbose (int, optional) – Verbosity level. Default is 0.

Returns:

Appropriate XrayTarget instance.

Return type:

XrayTarget