Properly scaling a 9x9 grid on iPhone 5 (9:16) res

Hello,
I need help in positioning and evenly scaling my 9x9 grid made up of 64x72 tiles in the iPhone5(640x1136) screen.

The main camera size settings is set to 5.68, the background is 640x1136 and the screen res is set to iPhone 5 tall (9:16).

Here is the code I am using to create and position the grid, bear in mind I am a beginner in C #:

public class SDASynergyFactory : MonoBehaviour {
   
    const float tileWidth  = 64.0f; // 32 for non retina
    const float tileHeight = 72.0f; // 36
   
    public GameObject synergyPrefab;
   
    // Helper method that positions the 9x9 grid in lower left side of screen
    private Vector3 PointForColumnAndRow(int column, int row){
       
        Vector3 screenToPoint = new Vector3((float)column * tileWidth + tileWidth/2 ,(float)row * tileHeight + tileHeight/2 ,0);
        Vector3 worldPos = Camera.main.ScreenToWorldPoint(screenToPoint);
       
        return worldPos;
    }
   
    // Instantiate prefab, and make it a child of SDASynergyFactory then position SDASynergyFactory to the middle of screen.
    public void AddSpriteForSynergys(HashSet<SDASynergy> synergys){
       
        foreach(SDASynergy synergy in synergys){
           
            Sprite sprite = Resources.Load<Sprite>("Sprites/" + synergy.SpriteName());
            synergy.sprite = sprite;
            synergyPrefab.GetComponent<SpriteRenderer>().sprite = synergy.sprite;
            synergyPrefab.name = synergy.SpriteName();
            synergyPrefab = Instantiate(synergyPrefab,PointForColumnAndRow(synergy.column,synergy.row),Quaternion.identity) as GameObject;
            synergyPrefab.transform.parent = this.transform;
        }
       
        Vector3 screenMidPos = new Vector3(Screen.width/2,Screen.height/2,10);
        Vector3 midpoint = Camera.main.ScreenToWorldPoint(screenMidPos);
        transform.position = midpoint;
    }
   
    // Position SDASynergyFactory to the middle of the 9x9 grid.
    void Start () {
       
        Vector3 synergyLayerMidPos =  new Vector3((float)SDALevel.numColumns * tileWidth/2,(float)SDALevel.numRows * tileHeight/2,0);
        Vector3 worldPos = Camera.main.ScreenToWorldPoint(synergyLayerMidPos);
        transform.position = worldPos;
    }
   
}

Code outputs this image:

The desired result:

Thanks in advance.

Rather than scaling the tiles, it would be much easier to change the camera size.

Use ScreenToWorldPoint to determine the where the left hand edge of the screen sits. Divide that value by the point you want to be visible on the left (both relative to the camera centre point), then multiply the camera size by that amount.

Thanks, I figured it out by changing tile width and hight variables from (64.0,72.0) to 0.64 and 0.72.