在 Matlab 中生成符号变量向量

Generating a vector of symbolic variables in Matlab

我想生成一个符号向量p,每个元素都有一个符号变量:

p = [p1; p2; ...; pn];

我不想输入 syms p1 p2 ... 因为我有大约 100 个这样的变量。有没有办法自动生成它们?

是的。像这样使用 sym

p = sym('p', [100 1]);

此语法将创建一个符号变量向量,其中 p 是第一个字符,后跟一个整数。我们希望创建其中的 100 个,这将为您提供一个从 p1p100 的符号向量,或者您想要的任何数量。只需将 100 更改为您想要的任何数字即可。

这就是 p 的样子:

>> p

p =

   p1
   p2
   p3
   p4
   p5
   p6
   p7
   p8
   p9
  p10
  p11
  p12
  p13
  p14
  p15
  p16
  p17
  p18
  p19
  p20
  p21
  p22
  p23
  p24
  p25
  p26
  p27
  p28
  p29
  p30
  p31
  p32
  p33
  p34
  p35
  p36
  p37
  p38
  p39
  p40
  p41
  p42
  p43
  p44
  p45
  p46
  p47
  p48
  p49
  p50
  p51
  p52
  p53
  p54
  p55
  p56
  p57
  p58
  p59
  p60
  p61
  p62
  p63
  p64
  p65
  p66
  p67
  p68
  p69
  p70
  p71
  p72
  p73
  p74
  p75
  p76
  p77
  p78
  p79
  p80
  p81
  p82
  p83
  p84
  p85
  p86
  p87
  p88
  p89
  p90
  p91
  p92
  p93
  p94
  p95
  p96
  p97
  p98
  p99
 p100