create a component from either Modelica source or a DynamicSystems object - MapleSim Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : MapleSim : MapleSim Application Programming Interface : API Commands : MapleSim/LinkModel/SetComponent

SetComponent - create a component from either Modelica source or a DynamicSystems object

Calling Sequence

SetComponent(model)

Parameters

model

-

string or DynamicSystems object

Description

• 

SetComponent attaches a model to the linked MapleSim model. The model appears in the Components palette under the Definitions tab.

• 

The model parameter is either a string consisting of Modelica source code or a DynamicSystems[System] object.

Examples

Link to the MapleSim model.

AMapleSim:-LinkModel:

Assign the equations for a simple nonlinear resistor.

eqsvt=V1itk,vt=vptvnt

eqs:=vt=V1itk,vt=vptvnt

(1)

Use MapleToModelica to create Modelica code for the model.

withMapleSim:-Tools:

moMapleToModelicaeqs,comment=Nonlinear resistor, v = R1*i^k,class_name=nonlinear_resistor,import=Modelica.SIunits.*,parameters=V1::Voltage=1 &c voltage at one ampere,k::real=2 &c current exponent,connections=p::electrical=vpt,it,n::electrical=vnt,it,unfilled_pins=n,display:

model nonlinear_resistor "Nonlinear resistor, v = R1*i^k"
    import Modelica.SIunits.*;

    extends Maplesoft.Icons.CustomComponent;

    Modelica.Electrical.Analog.Interfaces.PositivePin p annotation (Placement(transformation(
        extent = {
            {-110, -10},
            {-90, 10}},
        rotation = 0)));
    Modelica.Electrical.Analog.Interfaces.NegativePin n annotation (Placement(transformation(
        extent = {
            {90, -10},
            {110, 10}},
        rotation = 0)));
    parameter Modelica.SIunits.Voltage V1 = 1 "voltage at one ampere";
    parameter Real k = 2 "current exponent";
    Modelica.SIunits.Current i;
    Modelica.SIunits.Voltage vn;
    Modelica.SIunits.Voltage vp;
    Real v;
equation
    v = V1 * i ^ k;
    v = vp - vn;
    n.i = -i;
    n.v = vn;
    p.i = i;
    p.v = vp;
end nonlinear_resistor;

Add the component to the linked MapleSim model.

A:-SetComponentmo

Create a DynamicSystems object and attach it as a component.

sysDynamicSystems:-DiffEquationks+ω,parameters=k=1,ω=1:

Reassign the systemname field of sys; the new name is used as the model name.

sys:-systemnamefilter:

A:-SetComponentsys:

See Also

DynamicSystems, MapleSim, MapleSim Embedded Component, MapleSim[LinkModel], MapleSim[Tools][MapleToModelica]


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam