fix: round kev energy #21
@@ -1,11 +1,15 @@
|
||||
import math
|
||||
from typing import Annotated
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
from pydantic import AfterValidator, BaseModel, Field
|
||||
|
||||
|
||||
def round_dp(ndigits: int, /) -> AfterValidator:
|
||||
return AfterValidator(lambda v: round(v, ndigits))
|
||||
|
||||
|
||||
class DiffractionGeometry(BaseModel):
|
||||
energy_keV: Annotated[float, Field(gt=1.0, lt=100.0)]
|
||||
energy_keV: Annotated[float, Field(gt=1.0, lt=100.0), round_dp(3)]
|
||||
dtz_mm: Annotated[float, Field(gt=10.0, lt=5000.0)]
|
||||
pixel_size_mm: Annotated[float, Field(ge=0.05, le=0.5)]
|
||||
beam_center_pxl: tuple[float, float]
|
||||
|
||||
Reference in New Issue
Block a user