Main

Arrays

Main.Arrays History

Hide minor edits - Show changes to output

June 16, 2015, at 12:46 PM by 45.56.3.184 -
June 16, 2015, at 12:46 PM by 45.56.3.184 -
Deleted lines 0-1:
!! Arrays
Changed line 26 from:
(:table border=1 width=50% align=left bgcolor=#EEEEEE cellspacing=0:)
to:
(:table border=1 width=100% align=left bgcolor=#EEEEEE cellspacing=0:)
July 07, 2012, at 12:11 AM by 69.169.188.228 -
Changed lines 7-20 from:
Arrays with more than one dimension are allowed.  The array indices are separated by commas as in ''var[i,j,k...]''.
to:
Arrays with more than one dimension are allowed.  The array indices are separated by commas as in ''var[i,j,k...]'' or ''var[i][j][k]''. For operations on matrices, the precedence of operations is determined by the number of colons separating the vector indices. Matrix elements with fewer colon separators are executed first. For example, a set of 24 intermediate variables posed as:

* x[1:2][1::3][1:::4] = 1

results in the following set of equations:

* x[1][1][1] = 1
* x[2][1][1] = 1
* x[1][2][1] = 1
* x[2][2][1] = 1
* x[1][3][1] = 1
* x[2][3][1] = 1
* x[1][1][2] = 1
* etc... 
July 07, 2012, at 12:05 AM by 69.169.188.228 -
Added lines 68-94:
   End Equations
 End Model

(:cellnr:)

 ! Matrix Summation
 Model
  Parameters
    p[1:10][1::5] = 1
  End Parameters

  Variables
    x
  End Variables

  Intermediates
    ! sum the rows
    n[0][1:5] = 0
    n[1:10][1::5] = n[0:9][1::5] + p[1:10][1::5]
    ! sum the columns that are summation of rows
    m[0] = 0
    m[1:5] = m[0:4] + n[10][1:5]
  End Intermediates

  Equations
    ! solution = 50
    x = m[5]
June 10, 2011, at 12:12 PM by 158.35.225.240 -
Added lines 20-23:
   Constants
      n = 5
  End Constants

Changed line 25 from:
     p[1:5] = 1
to:
     p[1:n] = 1
Changed line 34 from:
     z[2:5] = z[1:4] + p[2:5]
to:
     z[2:n] = z[1:n-1] + p[2:n]
Changed line 38 from:
     sum = z[5]
to:
     sum = z[n]
November 01, 2008, at 04:46 PM by 98.199.241.177 -
Added lines 4-7:

!!! Higher dimensional arrays

Arrays with more than one dimension are allowed.  The array indices are separated by commas as in ''var[i,j,k...]''.
September 26, 2008, at 01:36 PM by 158.35.225.231 -
September 26, 2008, at 01:32 PM by 158.35.225.231 -
Changed lines 3-7 from:
Variable or object arrays are defined by square brackets with a range of integers and separated by a colon.  Arrays may be used to define multiple equations or operations on one line.  Any line with an array is processed sequentially from the lowest to the highest index.
to:
Variable or object arrays are defined by square brackets with a range of integers and separated by a colon as ''variable[index 1:index 2]''.  Arrays may be used to define multiple equations or connections on one line.  Any line with an array is processed sequentially from the lowest to the highest index.  The model parser creates and processes the arrays as if they were written sequential in non-array form as shown in the example.

!!! Array Index Consistency

When processing the arrays, the parser checks for array size consistency.  An error with an appropriate message is returned if the vector indeces are of different dimension
.
September 26, 2008, at 01:28 PM by 158.35.225.231 -
Added lines 7-59:
(:table border=1 width=50% align=left bgcolor=#EEEEEE cellspacing=0:)
(:cellnr:)

 ! Summation with arrays
 Model array
  Parameters
    p[1:5] = 1
  End Parameters

  Variables
    sum
  End Variables

  Intermediates
    z[1] = p[1]
    z[2:5] = z[1:4] + p[2:5]
  End Intermediates

  Equations
    sum = z[5]
  End Equations
 End Model

(:cellnr:)

 ! Summation without arrays
 Model array
  Parameters
    p[1] = 1
    p[2] = 1
    p[3] = 1
    p[4] = 1
    p[5] = 1
  End Parameters

  Variables
    sum
  End Variables

  Intermediates
    z[1] = p[1]
    z[2] = z[1] + p[2]
    z[3] = z[2] + p[3]
    z[4] = z[3] + p[4]
    z[5] = z[4] + p[5]
  End Intermediates

  Equations
    sum = z[5]
  End Equations
 End Model

(:tableend:)
September 26, 2008, at 01:20 PM by 158.35.225.231 -
Added lines 1-6:
!! Arrays

Variable or object arrays are defined by square brackets with a range of integers and separated by a colon.  Arrays may be used to define multiple equations or operations on one line.  Any line with an array is processed sequentially from the lowest to the highest index.

!!! Example