I have a mesh in Blender cut such that when I apply subdivision surface modifier, it will become round in the places I want it to. Here's the mesh created by using loop cuts on a basic cube:
Here's what it looks like when I do apply the subdivision surface modifier:
Predictably, the subdivision is applied in all "axes" (for a lack of a better term, this is not exactly about axes). I want to ideally see the subdivision to happen only around the loop of faces which make up the "walls" of the mesh - those intersected by the X and Y axes in the picture. Top top and bottom faces should stay flat except for their corners which should become round copying the roundness that has come about from subdividing the faces.
In a picture, I want this:
I achieved this by loop cutting the mesh along the band of faces which constitute the "walls" of it and setting the factor to .99 and -.99 on the two loop cuts. The subdivision surface modifier still introduces new geometry but it is so close together it visually looks like the top and bottom faces remained completely flat, with just a very slightly round corner where they meet the perpendicular faces to them.
This is a fine result, but I wonder if there is a tool / a way to do this which avoid introducing the unneeded geometry that I have here. I tried using the bevel tool and applying it to the 4 edges of the mesh, but when using that tool the roundness of the edge is not applied to the full extent of the faces to the sides of the edge, just half-way to each:
Am I missing some better technique / tool or is this the best way to go about this?
I am using Blender 2.83.