added ideal structures methods