net.sf.cpsolver.studentsct.check
Class CourseLimitCheck

java.lang.Object
  extended by net.sf.cpsolver.studentsct.check.CourseLimitCheck

public class CourseLimitCheck
extends Object

This class looks and reports cases when there are more students requesting a course than the course limit.

Usage:
     CourseLimitCheck ch = new CourseLimitCheck(model);
     if (!ch.check()) ch.getCSVFile().save(new File("limits.csv"));


Parameters:

ParameterTypeComment
CourseLimitCheck.FixUnlimitedBoolean If true, courses with zero or positive limit, but with unlimited sections, are made unlimited (course limit is set to -1).
CourseLimitCheck.UpZeroLimitsBoolean If true, courses with zero limit, requested by one or more students are increased in limit in order to accomodate all students that request the course. Section limits are increased to ( total weight of all requests for the offering / sections in subpart).
CourseLimitCheck.UpNonZeroLimitsBoolean If true, courses with positive limit, requested by more students than allowed by the limit are increased in limit in order to accomodate all students that requests the course. Section limits are increased proportionally by ( total weight of all requests in the offering / current offering limit), where offering limit is the sum of limits of courses of the offering.


Version:
StudentSct 1.1 (Student Sectioning)
Copyright (C) 2007 Tomáš Müller
muller@unitime.org
Lazenska 391, 76314 Zlin, Czech Republic

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Constructor Summary
CourseLimitCheck(StudentSectioningModel model)
          Constructor
 
Method Summary
 boolean check()
          Check for courses where the limit is below the number of students that request the course
 CSVFile getCSVFile()
          Return report
 StudentSectioningModel getModel()
          Return student sectioning model
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CourseLimitCheck

public CourseLimitCheck(StudentSectioningModel model)
Constructor

Parameters:
model - student sectioning model
Method Detail

getModel

public StudentSectioningModel getModel()
Return student sectioning model


getCSVFile

public CSVFile getCSVFile()
Return report


check

public boolean check()
Check for courses where the limit is below the number of students that request the course

Returns:
false, if there is such a case