As far as I can tell, +X% fire rate means +X% DPS (over an unlimited time horizon). Raising your fire rate by 25% doesn't make your weapon cooldown 75% of what it was (3/4 the cooldown would be 4/3 the DPS, a 33.3% bonus), it makes your cooldown 80% of what it was (4/5 the cooldown is 5/4 the shots-per-time, which is 1.25x as you'd expect). This means that it scales linearly; getting from +90% fire rate to +100% fire rate doesn't mean your weapons go from having 0.1x cooldown (firing 10x as much as default) to 0.0x cooldown (infinite shots per second); that would obviously be incorrect.
However, modifiers to the same stat stack additively in Stellaris, not multiplicatively. This means that if you already have a +20% fire rate bonus (1.2x shots/sec) and get another 20% fire rate bonus, your total fire rate (relative to base) goes to 1.4x, which is only a 16.7% increase over the first bonus alone (1.4/1.2 = 1.1666...) rather than going to 1.44x (1.2 + (20% of the current rate of 1.2) = 1.2 + 0.24 = 1.44). However, fire rate and damage are different stats (even though both affect DPS) so they *do* multiply; if you have 50% fire rate bonuses (1.5x) but no damage bonuses, getting a +10% damage bonus is worth as much
at that point as getting a +15% fire rate bonus, in terms of total DPS. As ComeradeKroo pointed out, if you have some total number of percept bonus to put into both specs, you should split them evenly for maximal total DPS.
With that said, as others have pointed out, there are times when one or the other is better. For some stuff, like point-defense, fire rate is the most important thing because you probably won't push a PD gun from "takes two shots to kill a missile" down to "takes one shot to kill a missile" through damage boosts, but if you raise the fire rate you can still shoot down more missiles in total. For other stuff, like spinal weapons and torpedoes, the damage multiplier can be a big deal because it may well change how many enemies you kill in your "alpha strike" (the first shot of the battle).
Let's compare two scenarios where you're fighting an enemy with 500 HP (for simplicity, assume all weapons do flat damage, no per-defense-layer modifiers). You have two choices of weapon:
- A battery of guns that deal 100 damage every five seconds (20 DPS total).
- A heavy weapon that deals 500 damage every 40 seconds (12.5 DPS total).
On paper, the gun battery has higher DPS and is thus superior. However, it will take it five volleys to kill the enemy. Assuming one volley is ready to go right from the start, that's four times you have to reload before the battle ends, and reloading takes five seconds each time, so that takes 20 seconds in total. During those 20 seconds, the enemy is shooting back, damaging and possibly killing some of your ships (which reduces your DPS!) On the other hand, the heavy weapon ends the fight as soon as it gets into range. The enemy maybe gets off one volley (assuming equal-range weapons), but never gets a chance to reload. Yes, its overall DPS is worse in a long fight, but in this (somewhat artificial) scenario, the alpha strike is what matters.
Now, suppose the enemy has upgraded, and has 600 HP (20% increase). You can choose one upgrade yourself: +30% fire rate, or +20% damage:
- Gun battery does 100 damage every 3.846 seconds (26 DPS) or 120 damage every five seconds (24 DPS).
- Heavy weapon does 500 damage every 30.77 seconds (16.25 DPS) or 600 damage every 40 seconds (15 DPS).
With the gun battery, you want the numerically-superior fire rate bonus; with the fire rate it now takes six volleys (five reloads) but those reloads only take 19.23 seconds; with the damage it still only takes four reloads and but those reloads take 20 seconds. If the enemy has a chance to fire during that 0.78 second gap, you take one more volley than you would have. With the heavy weapon, the damage bonus is better, though, because it lets you reduce the number of shots you need to take by half (equivalent to a 100% fire rate bonus); with 500 damage per shot you need to wait the 30.77 second reload time, and with 600 damage per shot you do not.
Now, suppose you instead have 5 100 HP enemies. I'm not going to work out the full math of the different amounts of damage they would do to you over time, but trust me when I say that in that case the heavy weapon (needs five shots, four reloads, at either 120.1 seconds with the increased fire rate or 160 seconds with the base fire rate) is vastly inferior to the battery (needs the same number of reloads as the heavy, but they take either 15.38 seconds with the fire rate increase or 20 seconds with the base rate). In neither case does the bonus damage matter (it all goes into overkill).
Getting out of simplified-example-land and back to Stellaris, high alpha strike makes heavy weapons like spinal mounts and torpedoes much more effective than their raw DPS would indicate, and the higher the damage the better, in most cases. Even if the alpha strike doesn't take the enemy out entirely, it front-loads the damage for your lighter weapons (lets face it, most fleets have a mix of weapons) to finish the job. In some cases, though, a really heavy weapon like a perdition beam is mostly wasted on light targets like corvettes (assuming it doesn't just miss), and while boosting the fire rate will help you massively overkill individual targets faster, you'd still be better off with lighter, more rapidly-firing weapons that do less damage per shot but don't waste 75% of it. (Also, a caveat about torpedoes: they have quite nice damage per volley, but they also have travel time, so they are less effective for alpha strikes than guns or energy weapons).