Вызывать.
For me, these words are all different, and only for some reason in English there exists universal word "cause".
Вызывать is most common verb, it indicates how the consequences follow the reason.
Причинять is mostly used in set expressions:
- причинять боль
- причинять беспокойство
Often can be substituted with "доставлять" which is to deliver, to bring, ...
Заставлять = "to make smb. to do smth."
Родители заставляют меня посещать музыкальную школу.
Производить = generate.
Этот автомобиль производит слишком много шума.