The words are similar, but "grand" has Latin roots. It has the idea of "imposing".
"Great" has Germanic roots and is used to refer to non-material things. Material things are often "large" or "big".
World War I was called at the time "the Great War". "Great" can mean "impressive" or "important" or "monumental"; however, it can also mean "wonderful."
In Ireland, it's common to hear people use "grand" to mean "wonderful" as well, so in that country, the words would be interchangeable for both meanings.
In Informal English, the word
grand also means "mil dólares ou libras".
Now, regarding on your question, the word
grand refers to:
1. Great in size, and fine or imposing in appearance or impression; illustrious, dignified, or noble (said of persons); majestic, splendid, magnificent, or sublime (said of things):
A grand monarch.
A grand view.
A grand conception.
2. Having higher rank or more dignity, size, or importance than other persons or things of the same name:
A grand lodge.
A grand vizier.
A grand piano.
You should read:
http://wikidiff.com/great/grandReference: Pearson Education. Longman Dictionary. 2004.