如何在matlab上的矩阵函数中定义一个整数来使用它

时间:2016-10-15 14:42:06

标签: matlab function matrix

我的目标是编写一个具有3个输入和1个输出的矩阵函数(plymecfunc)。这是我写的函数:

function[S]= plymecfunc(E1,E2,G12)
int E1;
int S12;
int S11;
int S22;
S11=1/E1;
S12=-V12/E1;
S22= 1/E2;
S66=1/G12;
S = [ S11 S12 0; 0 S22 0; 0 0 S66];

错误是: 的 ???输入参数" E1"未定义。
==>中的错误plymecfunc at 6
S11 = 1 / E1;

1 个答案:

答案 0 :(得分:2)

您不必声明变量(例如在C中)。

function[S]= plymecfunc(E1,E2,G12)
  V12 = % define V12, or pass as parameter
  S11 = 1/E1;
  S12 = -V12/E1;
  S22 = 1/E2;
  S66 = 1/G12;
  S = [ S11 S12 0; 0 S22 0; 0 0 S66];
end

您也可以内联定义S矩阵。

function[S]= plymecfunc(E1, E2, G12)
  V12 = % define V12, or pass as parameter
  S = [ 1/E1,  -V12/E1, 0; 0 1/E2 0; 0 0 1/G12];
end

顺便说一下,你错过了V12变量。