Error: Unexpected Token Parameter- Modellica

Error: Unexpected Token Parameter- Modellica

我尝试在 Modelica 中实现代码。我在以“parameter Integer n_Kapazitaten=3”

开头的行中收到以下错误

[错误] SimModelcode,第 8 行:意外标记:“参数”

model SimModelcode
  parameter Real l_Volume 
  parameter Integer n_Kapazitaten=3 ; //Anzahl der Kapazitäten
  parameter Integer n_Unterteilung=8 ;//Anzahl der Unterteilung
  parameter Real l_aussen[n_Unterteilung]=0.3;//die Länge der obigen Kante vom dem Außenrechteck
  parameter Real  l_Alu=0.05;//die Länge der obigen Kante vom Alublock
  parameter Real h_aussen[n_Unterteilung]=0.2;//die Höhe der linken Kante von dem Außenrechteck
  parameter Real h_Alu=0.02;//die Höhe der linken Kante von Alublock
  parameter Real dicke=0.01;
  parameter Integer lambda_Kunststoff=10;
  parameter Integer cp_Alu=200;
  parameter Integer cp_Kunststoff=10;
  parameter Integer rho_Kunststoff=1185;
  parameter Integer rho_Alu=2719;
  Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlow PrescribedHeatFlow(Q_flow = 10) annotation(
      Placement(visible = true, transformation(origin = {-14, -24}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Thermal.HeatTransfer.Sources.FixedTemperature PrescribedTemperature1(T = 300) annotation(
      Placement(visible = true, transformation(origin = {64, 42}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Thermal.HeatTransfer.Sources.FixedTemperature PrescribedTemperature2(T = 300) annotation(
      Placement(visible = true, transformation(origin = {64, 42}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Thermal.HeatTransfer.Sources.FixedTemperature PrescribedTemperature3(T = 300) annotation(
      Placement(visible = true, transformation(origin = {64, 42}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Thermal.HeatTransfer.Sources.FixedTemperature PrescribedTemperature4(T = 300) annotation(
      Placement(visible = true, transformation(origin = {64, 42}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Thermal.HeatTransfer.Components.HeatCapacitor Alu(C = 0.5438) annotation(
      Placement(visible = true, transformation(origin = {64, 42}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Thermal.HeatTransfer.Components.HeatCapacitor Capacitors[4*n_Kapazitaten](C =heatcapacity) annotation(
      Placement(visible = true, transformation(origin = {64, 42}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Thermal.HeatTransfer.Components.ThermalConductor Conductors[4*n_Kapazitaten+4](G=thermalconductance) annotation(
      Placement(visible = true, transformation(origin = {64, 42}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
equation
  l_link=((l_aussen[n_Unterteilung]-l_Alu)/2) /(n_Kapazitaten+1);// Abstand zwischen zwei Kapazitäten in linkem Block und rechtem Block
  l_oben=((h_aussen[n_Unterteilung]-h_Alu)/2)/(n_Kapazitaten+1);//Abstand zwischen zwei Kapazitäten in obigem Block und unterem Block
  V_alu=l_Alu*h_Alu*dicke;
  cpm_alu=V_alu*cp_alu;
  for i in 1:n_Unterteilung loop
    h_aussen[i]=h_Alu+(i/n_Unterteilung)*(h_aussen[n_Unterteilung]-h_Alu);//Berechnung der Höhe in den linken Trapezflächen
    Flache_link[i]=h_aussen[i]*dicke;//Berechnung der Flache in den linken Trapezflächen
    l_aussen[i]=l_Alu+(i/n_Unterteilung)*(l_aussen[n_Unterteilung]-l_Alu);//Berechnung der Länge in den obigen Trapezflächen
    Flache_oben[i]=l_aussen[i]*dicke;//Berechnung der Höhe in den obigen Trapezflächen
  end for; 
  G[1:n_Kapazitaten+2]= lambda_Kunststoff*(Flache_link[1:n_Unterteilung+1:2]/l_link);
  G[n_Kapazitaten+2:2*(n_Kapazitaten+1)+1]= lambda_Kunststoff*(Flache_oben[1:n_Unterteilung+1:2]/l_oben);
  G[2*(n_Kapazitaten+1)+1:3*(n_Kapazitaten+1)+1]= lambda_Kunststoff*(Flache_link[1:n_Unterteilung+1:2]/l_link);
  G[3*(n_Kapazitaten+1)+4*(n_Kapazitaten+1)+1]= lambda_Kunststoff*(Flache_oben[1:n_Unterteilung+1:2]/l_oben);
  for i in 1:n_Kapazitaten loop
    h_Volume[i]=h_Alu+(i/n_Kapazitaten)*(h_aussen[n_Unterteilung]-h_Alu)
    l_Volume[i]=l_Alu+(i/n_Kapazitaten)*(l_aussen[n_Unterteilung]-l_Alu)
    V_link[i]=(dicke*(h_Volume[i])*((i/n_Kapazitaten)*(l_aussen[n_Unterteilung]-l_Alu)/2))/; //Volumen in linkem und rechtem Block pro Kapazitat 
    V_oben[i]=(dicke*(l_Volume[i])*((i/n_Kapazitaten)*(h_aussen[n_Unterteilung]-h_Alu)/2));//Volumen in obigem und unterem Block pro Kapazitat 
    m_link[i]=rho_Kunststoff*V_link[i];
    m_oben[i]=rho_Kunststoff*V_oben[i];
    cpm_link[i]=cp_Kunststoff*m_link[i];
    cpm_oben[i]=cp_Kunststoff*m_oben[i];
  end for;
  cpm[1:n_Kapazitaten+1]=cp_Kunststoff*m_link[1:n_Kapazitaten+1];
  cpm[n_Kapazitaten+1:2*n_Kapazitaten+1]=cp_Kunststoff*m_oben[1:n_Kapazitaten+1];
  cpm[2*n_Kapazitaten+1:3*n_Kapazitaten+1]=cp_Kunststoff*m_link[1:n_Kapazitaten+1];
  cpm[3*n_Kapazitaten+1:4*n_Kapazitaten+1]=cp_Kunststoff*m_oben[1:n_Kapazitaten+1];
  
  ///for i=1:4*n_Kapazitaten
    //Capacitors_links=Capacitors[n_Kapazitaten];
    //Capacitors_oben=Capacitors[n_Kapazitaten:2*n_Kapazitaten];
    //Capacitors_rechts=Capacitors[2*n_Kapazitaten:3*n_Kapazitaten];
    //Capacitors_unten=Capacitors[3*n_Kapazitaten:4*n_Kapazitaten]
  //end for;
  
  for i in 1:4*n_Kapazitaten+4 loop 
    thermalconductance[i]=G[i];
  end for;
  for i in 1:4*n_Kapazitaten loop 
    heatcapacity[i]=cpm[i];
  end for;  


  connect(PrescribedHeatFlow.port, Aluminium.port) annotation(
      Line(points = {{54, 42}, {16, 42}, {16, 40}, {16, 40}}, color = {191, 0, 0}));
  connect(Conductors[1].port_a,Alu.port );
  connect(Conductors[n_Kapazitaten+2].port_a,Alu.port );
  connect(Conductors[2*(n_Kapazitaten+1)+1].port_a,Alu.port );
  connect(Conductors[3*(n_Kapazitaten+1)+1].port_a,Alu.port );
   
  for i in 1:n_Kapazitaten loop
    connect(Conductors[i].port_a,Capacitors[i].port);
    connect(Capacitors[i].port,Conductors[i+1].port_b);
  end for;
  connect(Conductors[n_Kapazitaten+1].port_a,PrescribedTemperature1.port);
  for i in n_Kapazitaten:2*n_Kapazitaten loop
    connect(Conductors[i].port_a,Capacitors[i].port);
    connect(Capacitors[i].port,Conductors[i+1].port_b);
  end for;
  connect(Conductors[2*n_Kapazitaten+2].port_a,PrescribedTemperature2.port);
  for i in 2*n_Kapazitaten:3*n_Kapazitaten loop
    connect(Conductors[i].port_a,Capacitors[i].port);
    connect(Capacitors[i].port,Conductors[i+1].port_b);
  end for;
  connect(Conductors[3*n_Kapazitaten+3].port_a,PrescribedTemperature3.port);
  for i in 3*n_Kapazitaten:4*n_Kapazitaten loop
    connect(Conductors[i].port_a,Capacitors[i].port);
    connect(Capacitors[i].port,Conductors[i+1].port_b);
  end for;
  connect(Conductors[4*n_Kapazitaten+4].port_a,PrescribedTemperature4.port);
end  SimModelcode;

你能帮我解决这个错误吗?解决这个问题似乎很容易。但由于我是 Modellica 的初学者,非常感谢您的帮助。提前致谢!

您在第 2、47、48 行末尾遗漏了分号 (;),在第 49 行末尾放置了斜杠 (/)。