I read in an interview that Tom Hardy just ate whatever he wanted and took in a lot of calories while training for the movie Warrior. I'm guessing that's because he has a very high metabolism, and it's hard for him to gain weight. I'm assuming that s your problem too. I've also read that ectomorphs just need to take in a lot of calories just to gain weight. It's worth looking into.