Skip to content

Commit

Permalink
compass, replace Katchaev Sigma by expression string
Browse files Browse the repository at this point in the history
  • Loading branch information
mmikhasenko committed Jun 4, 2024
1 parent 0ff6623 commit 995c417
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 43 deletions.
38 changes: 0 additions & 38 deletions docs/julia/x2pipipi-compass-1391643.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -37,44 +37,6 @@ theme(:wong2, frame=:box, grid=false, minorticks=true,
lab="")
```

## Function definitions

Non-standard lineshapes are used to model resonances that do not conform to a simple `BreitWigner` distributions, or a `MultichannelBreitWigner` has to be defined explicitly.
The code below defines a new lineshape, and its deserialization method.

```{julia}
@with_kw struct KatchaevSigma <: HadronicLineshapes.AbstractFlexFunc
poles::Vector{Float64}
residues::Vector{Float64}
nonpole_expansion_coeffs::Vector{Float64}
end
function (bw::KatchaevSigma)(σ::Number)
mπ = 0.13956755
mπ2 = mπ^2
@unpack poles, residues, nonpole_expansion_coeffs = bw
M00 = 0.0
for i = 1:length(poles)
M00 += residues[i] / (σ - poles[i])
end
#
mK = 0.493677
mK0 = 0.497614
scale = (σ / (4 * ((mK + mK0) / 2.0)^2)) - 1.0
for (i, ci) in enumerate(nonpole_expansion_coeffs)
M00 += scale^(i - 1) * ci
end
rho00 = sqrt(Kallen(σ, mπ2, mπ2)) / σ
return 1.0 / (M00 - 1im * rho00)
end
function ThreeBodyDecaysIO.dict2instance(::Type{KatchaevSigma}, dict)
@unpack poles, residues, nonpole_expansion_coeffs, x = dict
return NamedArgFunc(;
f=KatchaevSigma(poles, residues, nonpole_expansion_coeffs),
variable_names=[x])
end
```

## Deserialization of Objects to a Workspace

Expand Down
7 changes: 2 additions & 5 deletions models/x2pipipi-compass-1391643.json
Original file line number Diff line number Diff line change
Expand Up @@ -991,11 +991,8 @@
"name": "R(1690)"
},
{
"type": "KatchaevSigma",
"x": "m_12_sq",
"poles": [-0.0073999, 0.9828001],
"residues": [0.1131, 0.0],
"nonpole_expansion_coeffs": [0.0337, -0.3185, -0.0942, -0.5927],
"type": "generic_function",
"expression": "1.0 / (0.1131 / (m_12_sq + 0.0073999) + 0.0337 - 0.3185 * (m_12_sq / 0.982657846681 - 1.0) - 0.0942 * (m_12_sq / 0.982657846681 - 1.0)^2 -0.5927 * (m_12_sq / 0.982657846681 - 1.0)^3 - i * sqrt(1 - 4*0.13956755^2 / m_12_sq))",
"name": "R(600)"
},
{
Expand Down

0 comments on commit 995c417

Please sign in to comment.