1. A system for placing applications and their associated data into a data center, the system comprising: a memory having computer readable instructions; and a processing device for executing the computer readable instructions, the computer readable instructions comprising: (a) constructing a facility communication node graph to construct an elastic map; (b) constructing a client application usage data space; (c) associating a force function between two nodes based on communication bandwidth, wherein at least one of the nodes is a fictitious node; (d) inserting a node graph into the data space; (e) assigning the applications to the nodes; (f) associating a force function between each application and each node based on assignment; (g) allowing the nodes to relax towards the applications based on the sum of forces between them creating a relaxed system; (h) determining whether the relaxed system is satisfactory; and (i) placing the applications into the data center based on a function of distances between the applications and the nodes in the relaxed system, wherein if the relaxed system is not satisfactory, further comprising: (j) reassigning different applications to the nodes; and repeating steps (f) through (i).