From
https://www.lascon.co.uk/zOS-DFSMS-Storage-Class.php :
Specifically placing data
This is the other side of the coin. You want a dataset to be SMS managed, but you want to place it onto a specific disk. A good example, is the FDRABR initialisation dataset, which must go on the correct disk. You do this by using an SMS construct called 'guaranteed space'.
When you define a storage class in ISMF, you will see a parameter
Guaranteed Space . . . . . . . . . N
You change the pre filled 'N' to a 'Y', and SMS will not guarantee you any space, but it will guarantee to give you the volume you ask for. Its your responsibility to check that the space is there.
This is a powerful facility which lets you override all SMS control. I suggest you restrict it to a controlled set of users, using the following.
Define a storage class called something like GSPACE, which has the guaranteed space attribute set to 'Y', and define a Filtlist which contains explicit users who can override SMS, or pattern masks of users that can override SMS, if you RACF naming standards let you do this.
If you specify a storclass of 'GSPACE', and if you are contained in the list of authorised users, you will get the volume you asked for, otherwise, you drop down to a default value.
So you should be able to define a storage class of GSPACE as the quote indicates, then define a storage class with guaranteed space set to N, and with appropriate ACS routine rules you should be able to accomplish what you want. If you are not a storage administrator at your site, you will need to work with your site support group to accomplish what you want.