diff --git a/app/lib/irt/item_information_function.py b/app/lib/irt/item_information_function.py index 6d1f509..acd1b3e 100644 --- a/app/lib/irt/item_information_function.py +++ b/app/lib/irt/item_information_function.py @@ -21,7 +21,7 @@ class ItemInformationFunction(): return (self.model_data.a_param * q * (p - self.model_data.c_param)**2) / (p * ( (1 - self.model_data.c_param)**2)) - elif self.model_data.model == 'RASCH': + elif self.model_data.model == 'rasch': p = Rasch(self.model_data, kwargs).result() q = 1 - p return p * q diff --git a/app/lib/irt/item_response_function.py b/app/lib/irt/item_response_function.py index 9b5999d..81a20f1 100644 --- a/app/lib/irt/item_response_function.py +++ b/app/lib/irt/item_response_function.py @@ -11,7 +11,7 @@ class ItemResponseFunction(): def calculate(self, **kwargs): if self.model_data.model == '3PL': return ThreeParameterLogistic(self.model_data, kwargs).result() - elif self.model_data.model == 'RASCH': + elif self.model_data.model == 'rasch': return Rasch(self.model_data, kwargs).result() else: raise ItemGenerationError("irt model not supported or provided") diff --git a/app/lib/irt/models/rasch.py b/app/lib/irt/models/rasch.py index 33690e5..96090b5 100644 --- a/app/lib/irt/models/rasch.py +++ b/app/lib/irt/models/rasch.py @@ -5,6 +5,9 @@ from lib.irt.models.base import * class Rasch(Base): def result(self): + # contains the primary Rasch function, determining the probably of an inidividual + # that an individual at a certain theta would get a particular question correct + # https://edres.org/irt/baker/chapter6.pdf return (1 / (1 + self.e(-1 * (self.theta - self.b_param)))) @classmethod diff --git a/app/services/form_generation_service.py b/app/services/form_generation_service.py index b7207b5..bfb191e 100644 --- a/app/services/form_generation_service.py +++ b/app/services/form_generation_service.py @@ -1,6 +1,6 @@ import json, random, io, logging -from pulp import LpProblem, LpVariable, LpMinimize, LpMaximize, LpAffineExpression, LpConstraint, LpStatus, lpSum +from pulp import LpProblem, LpVariable, LpMinimize, LpStatus, lpSum from lib.application_configs import ApplicationConfigs from helpers import aws_helper, tar_helper, csv_helper, service_helper, solver_helper