I didn't mean that you could output to a file -- I meant that, knowing the name of the file the program is saved to (which is possible using facilities available in many modern languages, not sure about Fortran), you can ingest that file and print out its contents (to STDOUT for example).
It feels like cheating, but it's also probably the easiest way to get a true quine which'll always work even if you modify parts of the code (while retaining the part of the program which ingests and prints out the file's contents).
Many years ago, I attempted to cheat this way when writing a JScript quine- but it didn't work because the Windows Scripting Host keeps the source file open while interpreting it, which meant the script couldn't open its own source file because the file was already open in another program!
The definition of a multiquine specifically disallows passing in source code as input, though. The input to a multiquine is strictly for selecting which sub-quine to run, or which output set to calculate, and is not used in any way to influence the calculation of the selected output.
It feels like cheating, but it's also probably the easiest way to get a true quine which'll always work even if you modify parts of the code (while retaining the part of the program which ingests and prints out the file's contents).