Not understanding subsurf result

I’m experimenting with subsurface modifiers, and don’t understand the following behavior.

I created my object by duplicating the default cube twice, joining them, removing the inner faces (and their vertices), then rebuilding the top and bottom faces. Because my object is symmetrical, I expected the subsurf result to be symmetrical as well. Instead, the right side looks as though it has had edge creases applied.

How can I make the subsurface geometry symmetrical?

Have you tried removing duplicate vertices?

Loks like you have some additional Vertecies there. Like you accidentaly hit “e” without moving them. Thats the only explanation I have. Try remove doubles or just look if there is an extra Vert by selekting the edge or on of there Verts.

Yes, thanks, there were extra vertices at the inside corner. I had expected “Remove doubles” to take care of those, but it didn’t. Manually removing one at each corner did the trick.

Although technically they should have had the same coordinates, I understand how IEEE floating point works, so I should have realized that. Does “Remove doubles” have zero tolerance when determining whether vertices are the same?

As a follow-up question, why did the extra vertices cause that result? I know I had an asymmetrical object, but I don’t understand the specific result. If I had wanted a result like that, I wouldn’t have thought to add extra vertices there.

You can increase the merge distance. Bottom of the tool shelf or F6 after removing doubles.

It’s basic subdivision modeling. When you have cut edges or small faces very close together, the result is a sharp edge.