Создайте конструктивное ограничение
c = CreateConstraint(D)
c = CreateConstraint(D,prop1,val1,...)
CreateConstraint
метод mbcdoe.design
.
Проекты имеют свойство Constraints, первоначально это пусто:
constraints = design.Constraints constraints = 0x0 array of mbcdoe.designconstraint
c = CreateConstraint(D)
создает ограничение по умолчанию для проекта.
c = CreateConstraint(D,prop1,val1,...)
создает ограничение с заданными свойствами. Смотрите Ограничительные Свойства.
По умолчанию 1D табличное ограничение создается для проектов с двумя или больше входными параметрами.
Для проекта с одним входом линейное ограничение создается по умолчанию.
Можно задать тип ограничения во время создания при помощи Type
свойство, e.g.,
c = CreateConstraint(D,'Type','Linear')
Этот метод не добавляет ограничение в проект. Необходимо явным образом добавить ограничение в проект с помощью свойства Constraints проекта e.g.,
D = AddConstraint(D,c)
D.Constraints(end+1) = c;
AddConstraint
применить ограничение и удалить точки проекта вне ограничения.Создать Linear
ограничение, добавляет это к проекту и регенерирует точки проекта:
cLinear = CreateConstraint(design,'Type','Linear'); cLinear.A = [-2.5e-4, 1]; cLinear.b = 0.25; cLinear design.Constraints = cLinear; design = Generate(design);
Создать и применить 1D Table
ограничение:
cTable1d = CreateConstraint(design,'Type','1D Table'); cTable1d.Table = [0.9 0.5]; cTable1d.Breakpoints = [500 6000]; cTable1d design.Constraints = cTable1d; design = Generate(design);
Чтобы объединить ограничения, используйте массив ограничений, которые вы хотите применить:
design.Constraints = [cLinear, cTable1d]; constraints = design.Constraints design = Generate(design); constraints = 1x2 array of mbcdoe.designconstraint Linear design constraint: -0.00025*N + 1*L <= 0.25 1D Table design constraint: L(N) <= Lmax
Загрузить граничные ограничения из другого файла проекта и добавить к проекту:
otherProject = mbcmodel.LoadProject( [matlabroot,'\toolbox\',... 'mbc\mbctraining\Gasoline_project.mat']); mytestplan = otherProject.Testplans(1); boundaryConstraints = BoundaryModel(mytestplan,'global'); Design.Constraints = boundaryConstraints;