Japt, 31 18 bytes
-13 bytes thanks to @ETHproductions
This approach doesn't work well using Japt. Justin's solution is much better.
[U*Ål U¬£tYÃUå+]xx
##Explanation: [UÅl U¬£tYÃUå+]xx [ ] // Create a new array UÅl // Push: Input * Input.slice(1).length() // Push: U¬ // Input, split into chars £tY // Map; At each char: .substr(Index) Uå+ // Push: Cumulative reduce Input; with addition xx // Sum all the items, twice