create class for limited spectrum analysis, move some logic into model