how to program a big realistic fog horn (boat)
I guess the primary sound could be done easily using similar procedures as with pipes, possibly some quicky freqency modulation at the very beginning is tricky to emultate the transient frequency behaviour.
What is hard to create with all these "massive" sounds are the resonances and reflections of the environment. With such a strong and long durant sound, the whole ship will start to emit sound shaping the spectrum significantly. For the interpretation of the sound the hearing distance becomes very relevant, similar to a soprano voice, where you do not hear only the voice from the mouth, but resonances from the head and abdomen.
I tried such effects with strings of harps and pianos but this requires a hardware where voices have an impact on adjacent (at first passive!) voices and this usually cannot be done with common synthesizer architectures. In fact if you hear a piano, you do not hear the string, but it's impact on the wood and the other strings, so this is pretty complex.
i think you should try some hardstyle screetches i cant imagine how fog sound you want to hear but hardstyle screetches sounds like industrial sounds ...
ofc fog sound dont have eny constant time pitch function f(t) where y= pitch and x=t (or maybe it has)
but simply automation on osc2 with some noise modulation and little digital distortion .
does something like this satisfy you? :