<div style='font: 10pt verdana; text-align: left; padding: 0% 10% 0% 10%; '>Donnie Darko is the hero. It's that simple, I think. When you realize that's what it's supposed to be, the rest makes more sense - you understand more why the story went where it did.
Donnie Darko, in the film, makes a reference to being a hero - when he's talking to Gretchen, and she says "That sounds like a superhero name," and he says "How do you know I'm not?" Right there, he's telling the audience he's the hero. In the directors' commentary for the deleted scenes, the director straight out calls him the hero. He's a tragic hero. Everything else in the movie is the vehicle for him to be a tragic hero.
Donnie realizes - after Gretchen dies, and after he kills Frank - that he's the hero. He knows then that in order to make things right, he has to die. In their final talk, his English teacher tells him "The kids have to save themselves these days, because the grown ups don't know how," or something like that. When he asks what he should tell the other kids, she says "Tell them everything will be alright." Well, after Donnie shoots Frank, he tells the other kid to run off and tell their parents that everything will be okay. That's the point where he's figured it all out - he thought he had it figured all out before coming to Grandma Death's house (he said he has to go help Frank), but now he <i>really</i> has it all figured out. He knows he's the hero.
Now, everything else, like why the time travel happened in the first place, I don't think is explainable. I don't think the writer/director (same person) has any clue how it all started. I don't think he ever solved that part. That's just the vehicle for Donnie to be the hero. It's the suspension of disbeleif part you have to have to enjoy this excellent movie.
Well, maybe he caused the time problem. Because maybe he's causing the time rift, and with him dead, no one else dies - Gretchen lives, and his mother and sister live. He definitely dies to seal up the time rift, but I don't know if he causes it.</div>