Can the author of the program file a software patent? Does this apply to anyone who has contributed? Can users use my program in their patent?
GPLv3 is a license. It has no bearing at all on obtaining software patents that I can see. Computer programs, in general are not patented but are eligible for copyright protection. A mathematical algorithm by itself would not be patentable, but the use of an algorithm to solve a tangible problem might be.
To obtain a patent the invention must be novel. Your computer program, assuming it is publicly published represents prior art so any novel aspects of your program would not be patentable by someone else. This doesn't mean someone filing for a patent can't use your program. For instance I might use the Python computer language to create an implementation that is used in a patent application. That patent application wouldn't be trying to patent Python or any clever aspects already contained in Python.
I'd like to point out that I am not a lawyer so this isn't legal advice. That said, I do believe if someone publishes a program using the GPLv3 or using GPLv3 code, the license requires the patent owner to grant a license to the patented invention. This site addresses GPLv3 and patents. Licensing is off topic for this site so I really can't comment on that. You might want to post a question on the Law SE site.
In addition to Eric’s very useful answer, a newly written program, regardless of any license, might very well infringe a patent previously granted to someone else.
Although it is often said that software can’t be patented, it frequently can if claimed properly although it is also true that older patents of this type are subject to invalidation under current views of patent law in the US. Other places like the EPO are more consistent about what is and what is not patentable subject matter.