// D4.swift just make arrays #if os(OSX) || os(iOS) // for libraries, portable for OSX and Linux import Foundation #elseif os(Linux) import Glibc #endif print("D4.swift just initialize arrays") let nx = 4 // problem parameters, should be 6, small for test let ny = 4 let nz = 4 let nt = 4 let nxyzt = (nx-2)*(ny-2)*(nz-2)*(nt-2) func s(_ i:Int,_ ii:Int,_ iii:Int,_ iiii:Int) -> Int { // for x,y,z,t return (i-1)*(ny-2)*(nz-2)*(nt-2) + (ii-1)*(nz-2)*(nt-2) + (iii-1)*(nt-2) + (iiii-1) } // end s func sk(_ k:Int,_ i:Int,_ ii:Int,_ iii:Int,_ iiii:Int) -> Int { // for x,y,z,t return k*(nxyzt+1) + (i-1)*(ny-2)*(nz-2)*(nt-2) + (ii-1)*(nz-2)*(nt-2) + (iii-1)*(nt-2) + (iiii-1) } // end sk func ss(_ i:Int,_ ii:Int,_ iii:Int,_ iiii:Int, _ j:Int,_ jj:Int,_ jjj:Int,_ jjjj:Int) -> Int { return s(i,ii,iii,iiii)*(nxyzt+1) + s(j,jj,jjj,jjjj) } // end ss var A = [[Double]](repeating:[Double](repeating:0.0,count:nxyzt+1),count:nxyzt) // last column is RHS // initialize A for i in 1..