HQ officers supposed after analysis that all torpedoes missed because of errors in determination of target course angle and speed, the same did historians later [speed of Tirpitz was 24 knots and Lunin calculated it as 22 knots, target course angle was 90 degrees and Lunin calculated it as 60 degrees]. If Lunin used time gaps in torpedo salvo not 4 sec but 14 sec he could hit the target with high possibility [probably, he didn't want to stay at periscope depth too long]. In principle, such torpedo fire [90 degrees of target course, angle, distance 18-20 cables and speed 22-24 knots] was prohibited by Soviet naval manuals as useless and Lunin, probably, just wanted to use at least small chance.
The explosion heard at 18:04 was explosion from self-exploded torpedoes after their maximal run, explosions between 18:31-18:38 were from depth charges of German destroyers which detected British submarine. Germans didn't detect K-21 and couldn't hear explosions from missed torpedoes so they got info about attack against "Tirpitz" only after interception of radio message from the Soviet submarine.
Prof. Platonov doesn't mention in his excellent book that "Tirpitz" was among official claimed hits of K-21. Even Dmitriev [Soviet-era historian] who described the "combat" between K-21 and Norwegian fishing motor boats as combat between K-21 and German anti-submarine vessels mentioned only that K-21 attacked very powerful German battleship "Tirpitz" using stern torpedo tubes and there are no words about any hits.
The fact that submarine attacked "Tirpitz" was very important itself that time [especially the radio message from K-21 which was intercepted by British convoy and Germans] - the visibility and sea state were very good so Lunin could raise periscope only for very short period of time [and that caused mistakes in the definition of distance and target course angle - as the result Lunin fired from stern tubes under very disadvantageous position], Lunin (as well as all other Soviet submarine commanders) had absolutely no experience in attack of large high-speed warship guarded by strong escort and performed anti-submarine manoeuvring [and he did that for the first and single time during the war among Soviet submarines], Lunin also didn't know the abilities of modern German anti-submarine weapons and he was afraid for his submarine and crew too much.
Translated from Russian.