These are the parts of this sentence:
- die Wahrnehmung von Gerüchen
Note, that neither Wahrnehmung nor Gerüchen are subjects. The whole nominal group is the subject.
- ist ein komplexer Vorgang
The predicate consists of two parts:
This verb is of a special kind, it is a Kopula (copula)
- ein komplexer Vorgang
Gleichsetzungsnominativ (predicative nominative)
Note, that this is neither an object nor a subject, it is part of the predicate.
Also note, that Vorgang is not the predicative nominative. It is just a part of it.
Other names for Gleichsetzungsnominativ are:
- prädikativer Nomativ
You also will find the name Nominativobjekt, but as said before, it is not an object, it is part of the predicate.
Copulas are special verbs, that do not really describe an action. They have a grammatical function. They link (couple) something together. Examples of copulas are:
- sein (to be)
- werden (to become)
- bleiben (to stay, to remain)
But there are also some more.
Those verbs only can be used with a Prädikativ (predicative supplement) which either is a nominal group in nominative case (which always contains a noun in nominative case) or an adjective group (which always contains an adjective).
How to tell apart the subject and the predicative nominative?
There are German sentences where it is ambiguous which part of speech should count as the subject. You surely know that in German the subject has no fix place in a sentence. It can be (almost) everythere, but normally it is easy to find, because normally it is the only part of speech that is in nominative case.
Here is an example:
The hunter shoots the rabbit.
In English the hunter and the rabbit are both in nominative case, but this doesn't matter, because in English the subject is the first part of the sentence. You clearly know who is pulling the trigger (the hunter) and who will die (the rabbit). This would be wrong in English:
wrong: The rabbit shoots the hunter.
But in German these two sentences are both absolutely correct:
Der Jäger erschießt den Hasen.
Den Hasen erschießt der Jäger.
In German it is not the position but the grammatical case which indicates the subject. Here, in both sentences der Jäger is the only part of speech in nominative case, so it is very clear, that der Jäger must be the subject (the one who pulls the trigger) and that den Hasen (something in accusative case) must be something else (here it is an accusative object).
But then there are sentences like this one:
Marillen sind Aprikosen.
Both nouns are perfect synonyms. They are both names for the very same fruit (apricots), just with different geographical extension (The word Marille is used in Austria, Italy (South Tyrol) and parts of Bavaria, Aprikose is used everywhere else).
Which one is the subject, and which one is the predicative nominative?
In this example you simply can't tell. Both interpretations are correct, and both interpretations match with the same meaning. (which is: They are equal)
But in some other cases you can tell them apart:
Another test is the infinitive test: Turn the verb into its infinite form and try to match it with what you believe might be the predicative nominative. The result that makes more sense indicates the predicative nominative:
Markus ist ein kluges Kind. (Markus is a clever child.)
- Markus sein (to be Markus)
- Ein kluges Kind sein (to be a clever child)
Trying to be a clever child makes more sense than trying to be Markus, so ein kluges Kind is the predicative nominative and Markus is the subject.
Marillen sind Aprikosen.
- Marillen sein
- Aprikosen sein
Both possibilities make the same amount of sense (because they both mean exactly the same: to be apricots), so you can't tell which one is the subject.