double sineLookup[1024] =
{
2048,2060,2073,2085,2098,2110,2123,2135,2148,2161,
...
Why have you declared sineLookup with type double, since you are only going to convert it back to integer to send to the DAC? Declare it with type uint16_t instead.
If you use many of those lookup tables, you'll run out of RAM (you must be using a mega or similar, otherwise you would have already). Look up PROGMEM in the reference section of the main Arduino site to see how to avoid this.