Search in sources :

Example 1 with Unit

use of com.opensimulationplatform.core.model.modeldescription.Unit in project osp-validator by open-simulation-platform.

the class ValidateModelDescriptionDataModel method main.

public static void main(String[] args) {
    ModelDescription modelDescription = new ModelDescription();
    Unit unit = new Unit();
    unit.setExponent(Unit.Exponent.KILOGRAM, 1);
    Variable v1 = new Variable();
    v1.setCausality(Variable.Causality.OUTPUT);
    v1.setType(Variable.Type.REAL);
    v1.setName("v1");
    v1.setUnit(unit);
    Variable v2 = new Variable();
    v2.setCausality(Variable.Causality.OUTPUT);
    v2.setType(Variable.Type.REAL);
    v2.setName("v2");
    v2.setUnit(unit);
    Variable v3 = new Variable();
    v3.setCausality(Variable.Causality.INPUT);
    v3.setType(Variable.Type.REAL);
    v3.setName("v3");
    v3.setUnit(unit);
    Variable v4 = new Variable();
    v4.setCausality(Variable.Causality.INPUT);
    v4.setType(Variable.Type.REAL);
    v4.setName("v4");
    v4.setUnit(unit);
    Force force = new Force();
    force.setName("force");
    force.setVariables(Arrays.asList(v1, v2));
    LinearVelocity linearVelocity = new LinearVelocity();
    linearVelocity.setName("linearVelocity");
    linearVelocity.setVariables(Arrays.asList(v3, v4));
    LinearMechanicalPort linearMechanicalPort = new LinearMechanicalPort();
    linearMechanicalPort.setName("linearMechanicalPort");
    linearMechanicalPort.setForce(force);
    linearMechanicalPort.setLinearVelocity(linearVelocity);
    modelDescription.getUnits().add(unit);
    modelDescription.getVariables().addAll(Arrays.asList(v1, v2, v3, v4));
    modelDescription.getForces().add(force);
    modelDescription.getLinearVelocities().add(linearVelocity);
    modelDescription.getLinearMechanicalPorts().add(linearMechanicalPort);
    ModelDescriptionValidator validator = new ModelDescriptionValidator();
    List<ValidationDiagnostic<Object>> diagnostics = validator.validate(modelDescription);
    for (ValidationDiagnostic<Object> diagnostic : diagnostics) {
        System.out.println("Message: " + diagnostic.getErrorMessage());
        System.out.println("Object: " + diagnostic.getValidatedObject());
    }
}
Also used : LinearVelocity(com.opensimulationplatform.core.model.modeldescription.variablegroup.linearvelocity.LinearVelocity) Variable(com.opensimulationplatform.core.model.modeldescription.Variable) Force(com.opensimulationplatform.core.model.modeldescription.variablegroup.force.Force) ModelDescriptionValidator(com.opensimulationplatform.core.validation.modeldescription.ModelDescriptionValidator) LinearMechanicalPort(com.opensimulationplatform.core.model.modeldescription.variablegroup.linearmechanicalport.LinearMechanicalPort) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) ModelDescription(com.opensimulationplatform.core.model.modeldescription.ModelDescription) Unit(com.opensimulationplatform.core.model.modeldescription.Unit)

Example 2 with Unit

use of com.opensimulationplatform.core.model.modeldescription.Unit in project osp-validator by open-simulation-platform.

the class ValidateSystemStructureDataModel method getModelDescription.

private static ModelDescription getModelDescription(Variable.Causality causalityA, Variable.Causality causalityB) {
    ModelDescription modelDescription = new ModelDescription();
    Unit unit = new Unit();
    unit.setExponent(Unit.Exponent.KILOGRAM, 1);
    Variable v1 = new Variable();
    v1.setCausality(causalityA);
    v1.setType(Variable.Type.REAL);
    v1.setName("v1");
    v1.setUnit(unit);
    Variable v2 = new Variable();
    v2.setCausality(causalityA);
    v2.setType(Variable.Type.REAL);
    v2.setName("v2");
    v2.setUnit(unit);
    Variable v3 = new Variable();
    v3.setCausality(causalityB);
    v3.setType(Variable.Type.REAL);
    v3.setName("v3");
    v3.setUnit(unit);
    Variable v4 = new Variable();
    v4.setCausality(causalityB);
    v4.setType(Variable.Type.REAL);
    v4.setName("v4");
    v4.setUnit(unit);
    Variable v5 = new Variable();
    v5.setCausality(causalityA);
    v5.setType(Variable.Type.REAL);
    v5.setName("v5");
    v5.setUnit(unit);
    Force force = new Force();
    force.setName("force");
    force.setVariables(Arrays.asList(v1, v2));
    LinearVelocity linearVelocity = new LinearVelocity();
    linearVelocity.setName("linearVelocity");
    linearVelocity.setVariables(Arrays.asList(v3, v4));
    LinearMechanicalPort linearMechanicalPort = new LinearMechanicalPort();
    linearMechanicalPort.setName("linearMechanicalPort");
    linearMechanicalPort.setForce(force);
    linearMechanicalPort.setLinearVelocity(linearVelocity);
    modelDescription.getUnits().add(unit);
    modelDescription.getVariables().addAll(Arrays.asList(v1, v2, v3, v4, v5));
    modelDescription.getForces().add(force);
    modelDescription.getLinearVelocities().add(linearVelocity);
    modelDescription.getLinearMechanicalPorts().add(linearMechanicalPort);
    return modelDescription;
}
Also used : LinearVelocity(com.opensimulationplatform.core.model.modeldescription.variablegroup.linearvelocity.LinearVelocity) Variable(com.opensimulationplatform.core.model.modeldescription.Variable) Force(com.opensimulationplatform.core.model.modeldescription.variablegroup.force.Force) LinearMechanicalPort(com.opensimulationplatform.core.model.modeldescription.variablegroup.linearmechanicalport.LinearMechanicalPort) ModelDescription(com.opensimulationplatform.core.model.modeldescription.ModelDescription) Unit(com.opensimulationplatform.core.model.modeldescription.Unit)

Example 3 with Unit

use of com.opensimulationplatform.core.model.modeldescription.Unit in project osp-validator by open-simulation-platform.

the class VE_AngularMechanicalPort_1_Test method invalid.

@Test
public void invalid() {
    Variable v1 = new Variable();
    v1.setCausality(Variable.Causality.OUTPUT);
    v1.setUnit(new Unit());
    v1.setType(Variable.Type.REAL);
    Variable v2 = new Variable();
    v2.setCausality(Variable.Causality.OUTPUT);
    v2.setUnit(new Unit());
    v2.setType(Variable.Type.REAL);
    Variable v3 = new Variable();
    v3.setCausality(Variable.Causality.OUTPUT);
    v3.setUnit(new Unit());
    v3.setType(Variable.Type.REAL);
    Variable v4 = new Variable();
    v4.setCausality(Variable.Causality.OUTPUT);
    v4.setUnit(new Unit());
    v4.setType(Variable.Type.REAL);
    Torque torque = new Torque();
    torque.setVariables(Arrays.asList(v1, v2));
    AngularVelocity angularVelocity = new AngularVelocity();
    angularVelocity.setVariables(Arrays.asList(v3, v4));
    AngularMechanicalPort angularMechanicalPort = new AngularMechanicalPort();
    angularMechanicalPort.setTorque(torque);
    angularMechanicalPort.setAngularVelocity(angularVelocity);
    builder.build(angularMechanicalPort);
    builder.complete();
    List<ValidationDiagnostic<AngularMechanicalPort>> diagnostics = validationError.validate();
    assertEquals(1, diagnostics.size());
    AngularMechanicalPort invalidAngularMechanicalPort = diagnostics.get(0).getValidatedObject();
    assertEquals(angularMechanicalPort, invalidAngularMechanicalPort);
}
Also used : Torque(com.opensimulationplatform.core.model.modeldescription.variablegroup.torque.Torque) Variable(com.opensimulationplatform.core.model.modeldescription.Variable) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) AngularVelocity(com.opensimulationplatform.core.model.modeldescription.variablegroup.angularvelocity.AngularVelocity) Unit(com.opensimulationplatform.core.model.modeldescription.Unit) AngularMechanicalPort(com.opensimulationplatform.core.model.modeldescription.variablegroup.angularmechanicalport.AngularMechanicalPort) Test(org.junit.Test)

Example 4 with Unit

use of com.opensimulationplatform.core.model.modeldescription.Unit in project osp-validator by open-simulation-platform.

the class VE_AngularMechanicalQuasiPort_1_Test method valid.

@Test
public void valid() {
    Variable v1 = new Variable();
    v1.setCausality(Variable.Causality.OUTPUT);
    v1.setUnit(new Unit());
    v1.setType(Variable.Type.REAL);
    Variable v2 = new Variable();
    v2.setCausality(Variable.Causality.OUTPUT);
    v2.setUnit(new Unit());
    v2.setType(Variable.Type.REAL);
    Variable v3 = new Variable();
    v3.setCausality(Variable.Causality.INPUT);
    v3.setUnit(new Unit());
    v3.setType(Variable.Type.REAL);
    Variable v4 = new Variable();
    v4.setCausality(Variable.Causality.INPUT);
    v4.setUnit(new Unit());
    v4.setType(Variable.Type.REAL);
    Torque torque = new Torque();
    torque.setVariables(Arrays.asList(v1, v2));
    AngularDisplacement angularDisplacement = new AngularDisplacement();
    angularDisplacement.setVariables(Arrays.asList(v3, v4));
    AngularMechanicalQuasiPort angularMechanicalQuasiPort = new AngularMechanicalQuasiPort();
    angularMechanicalQuasiPort.setTorque(torque);
    angularMechanicalQuasiPort.setAngularDisplacement(angularDisplacement);
    builder.build(angularMechanicalQuasiPort);
    builder.complete();
    List<ValidationDiagnostic<AngularMechanicalQuasiPort>> diagnostics = validationError.validate();
    assertTrue(diagnostics.isEmpty());
}
Also used : Torque(com.opensimulationplatform.core.model.modeldescription.variablegroup.torque.Torque) Variable(com.opensimulationplatform.core.model.modeldescription.Variable) AngularDisplacement(com.opensimulationplatform.core.model.modeldescription.variablegroup.angulardisplacement.AngularDisplacement) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) AngularMechanicalQuasiPort(com.opensimulationplatform.core.model.modeldescription.variablegroup.angularmechanicalquasiport.AngularMechanicalQuasiPort) Unit(com.opensimulationplatform.core.model.modeldescription.Unit) Test(org.junit.Test)

Example 5 with Unit

use of com.opensimulationplatform.core.model.modeldescription.Unit in project osp-validator by open-simulation-platform.

the class AngularVelocityValidatorTest method valid.

@Test
public void valid() {
    ModelDescription modelDescription = new ModelDescription();
    AngularVelocity angularVelocity = new AngularVelocity();
    Variable v1 = new Variable();
    v1.setCausality(Variable.Causality.INPUT);
    v1.setType(Variable.Type.REAL);
    v1.setUnit(new Unit());
    Variable v2 = new Variable();
    v2.setCausality(v1.getCausality());
    v2.setType(v1.getType());
    v2.setUnit(v1.getUnit());
    angularVelocity.setVariables(Arrays.asList(v1, v2));
    modelDescription.getAngularVelocities().add(angularVelocity);
    AngularVelocityValidator v = new AngularVelocityValidator();
    List<ValidationDiagnostic<AngularVelocity>> diagnostics = v.validate(modelDescription);
    assertTrue(diagnostics.isEmpty());
}
Also used : Variable(com.opensimulationplatform.core.model.modeldescription.Variable) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) ModelDescription(com.opensimulationplatform.core.model.modeldescription.ModelDescription) AngularVelocity(com.opensimulationplatform.core.model.modeldescription.variablegroup.angularvelocity.AngularVelocity) Unit(com.opensimulationplatform.core.model.modeldescription.Unit) Test(org.junit.Test)

Aggregations

Unit (com.opensimulationplatform.core.model.modeldescription.Unit)149 Variable (com.opensimulationplatform.core.model.modeldescription.Variable)145 ValidationDiagnostic (com.opensimulationplatform.core.validation.ValidationDiagnostic)137 Test (org.junit.Test)137 ModelDescription (com.opensimulationplatform.core.model.modeldescription.ModelDescription)35 Force (com.opensimulationplatform.core.model.modeldescription.variablegroup.force.Force)21 LinearVelocity (com.opensimulationplatform.core.model.modeldescription.variablegroup.linearvelocity.LinearVelocity)16 Pressure (com.opensimulationplatform.core.model.modeldescription.variablegroup.pressure.Pressure)13 Torque (com.opensimulationplatform.core.model.modeldescription.variablegroup.torque.Torque)13 Voltage (com.opensimulationplatform.core.model.modeldescription.variablegroup.voltage.Voltage)13 AngularDisplacement (com.opensimulationplatform.core.model.modeldescription.variablegroup.angulardisplacement.AngularDisplacement)11 AngularVelocity (com.opensimulationplatform.core.model.modeldescription.variablegroup.angularvelocity.AngularVelocity)11 Charge (com.opensimulationplatform.core.model.modeldescription.variablegroup.charge.Charge)11 Current (com.opensimulationplatform.core.model.modeldescription.variablegroup.current.Current)11 LinearDisplacement (com.opensimulationplatform.core.model.modeldescription.variablegroup.lineardisplacement.LinearDisplacement)11 Volume (com.opensimulationplatform.core.model.modeldescription.variablegroup.volume.Volume)11 VolumeFlowRate (com.opensimulationplatform.core.model.modeldescription.variablegroup.volumeflowrate.VolumeFlowRate)11 AngularAcceleration (com.opensimulationplatform.core.model.modeldescription.variablegroup.angularacceleration.AngularAcceleration)9 LinearAcceleration (com.opensimulationplatform.core.model.modeldescription.variablegroup.linearacceleration.LinearAcceleration)9 LinearMechanicalPort (com.opensimulationplatform.core.model.modeldescription.variablegroup.linearmechanicalport.LinearMechanicalPort)7