19 lines
591 B
Python
19 lines
591 B
Python
from pydantic import BaseModel
|
|
from typing import List
|
|
|
|
from models.attribute import Attribute
|
|
|
|
from lib.irt.item_response_function import ItemResponseFunction
|
|
from lib.irt.item_information_function import ItemInformationFunction
|
|
|
|
class Item(BaseModel):
|
|
id: int
|
|
attributes: List[Attribute]
|
|
b_param: float = 0.00
|
|
|
|
def iif(self, solver_run, theta):
|
|
return ItemInformationFunction(solver_run.irt_model).calculate(b_param=self.b_param,theta=theta)
|
|
|
|
def irf(self, solver_run, theta):
|
|
return ItemResponseFunction(solver_run.irt_model).calculate(b_param=self.b_param,theta=theta)
|