Currently, DEM-Engine custom model functionality permits only one script, meaning that in principal, you are writing a unified force model that goes for sphere-sphere, sphere-boundary,
and sphere-mesh. Just think of the sphere-compressor contact as a special case, which is the contact between a normal sphere and an infinitely-large sphere.
About enforcing different models for different objects, you can associate different objects with respective family numbers, then use if statements to differentiate types of contacts. I talked about this in one of the earlier replies in this thread, please go back and have a look.
Thank you,
Ruochun