MCPcopy Create free account
hub / github.com/OpenSees/OpenSees / buildFE_Model

Method buildFE_Model

SRC/modelbuilder/PartitionedModelBuilder.cpp:61–97  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

59}
60
61int
62PartitionedModelBuilder::buildFE_Model(void)
63{
64 int result;
65
66 if (thePartitionedDomain == 0) {
67 opserr << "PartitionedModelBuilder::buildFE_Model(void) -";
68 opserr << "No PartitionedDomain associated with this object\n";
69 return -1;
70 }
71
72 // we build the interface, i.e. nodes on boundaries and any constraints and loads
73 int numSubdomains = thePartitionedDomain->getNumSubdomains();
74 result = this->buildInterface(numSubdomains);
75 if (result != 0) {
76 opserr << "PartitionedModelBuilder::buildFE_Model(void) -";
77 opserr << "buildInterface failed\n";
78 return result;
79 }
80
81 // now build the subdomains, stopping if an error in building any subdomain
82 SubdomainIter &theSubs = thePartitionedDomain->getSubdomains();
83 Subdomain *theSubdomain;
84 while ((theSubdomain = theSubs()) != 0) {
85 result = theSubdomain->buildSubdomain(numSubdomains, *this);
86 if (result != 0) {
87 opserr << "PartitionedModelBuilder::buildFE_Model(void) -";
88 opserr << "buildSubdomain failed for Subdomain " << theSubdomain->getTag();
89 opserr << endln;
90 return result;
91 }
92
93 }
94
95 // if got here a PartitiondDomain has been populated
96 return 0;
97}
98
99PartitionedDomain *
100PartitionedModelBuilder::getPartitionedDomainPtr(void) const

Callers

nothing calls this directly

Calls 4

getNumSubdomainsMethod · 0.80
buildInterfaceMethod · 0.80
buildSubdomainMethod · 0.80
getTagMethod · 0.45

Tested by

no test coverage detected