41 template<
unsigned DIM>
44 unsigned n_pres = this->npres_nst();
46 for (
unsigned l = 0; l < n_pres; l++)
49 this->internal_data_pt(P_nst_internal_index)->unpin(l);
63 template<
unsigned DIM>
65 std::set<std::pair<Data*, unsigned>>& paired_load_data)
68 unsigned u_index[DIM];
69 for (
unsigned i = 0;
i < DIM;
i++)
71 u_index[
i] = this->u_index_nst(
i);
75 unsigned n_node = this->nnode();
76 for (
unsigned n = 0; n < n_node; n++)
80 for (
unsigned i = 0;
i < DIM;
i++)
82 paired_load_data.insert(std::make_pair(this->node_pt(n), u_index[
i]));
87 identify_pressure_data(paired_load_data);
100 template<
unsigned DIM>
102 std::set<std::pair<Data*, unsigned>>& paired_pressure_data)
105 unsigned n_internal = this->ninternal_data();
106 for (
unsigned l = 0; l < n_internal; l++)
108 unsigned nval = this->internal_data_pt(l)->nvalue();
110 for (
unsigned j = 0; j < nval; j++)
112 paired_pressure_data.insert(
113 std::make_pair(this->internal_data_pt(l), j));
137 4, 4, 4, 4, 3, 3, 3, 3, 3, 3};
149 template<
unsigned DIM>
152 unsigned n_node = this->nnode();
154 for (
unsigned l = 0; l < n_node; l++)
156 if (this->node_pt(l)->nvalue() == DIM + 1)
159 this->node_pt(l)->unpin(DIM);
169 template<
unsigned DIM>
173 unsigned n_node = this->nnode();
174 for (
unsigned n = 0; n < n_node; n++)
176 if (this->node_pt(n)->nvalue() == DIM + 1)
178 this->node_pt(n)->pin(DIM);
186 template<
unsigned DIM>
190 unsigned n_pres = npres_nst();
191 for (
unsigned l = 0; l < n_pres; l++)
193 Node* nod_pt = this->node_pt(Pconv[l]);
211 template<
unsigned DIM>
213 std::set<std::pair<Data*, unsigned>>& paired_load_data)
216 unsigned n_node = this->nnode();
217 for (
unsigned n = 0; n < n_node; n++)
221 for (
unsigned i = 0;
i < DIM;
i++)
223 paired_load_data.insert(std::make_pair(this->node_pt(n),
i));
228 identify_pressure_data(paired_load_data);
240 template<
unsigned DIM>
242 std::set<std::pair<Data*, unsigned>>& paired_load_data)
245 unsigned n_pres = npres_nst();
246 for (
unsigned l = 0; l < n_pres; l++)
250 paired_load_data.insert(std::make_pair(this->node_pt(Pconv[l]), DIM));
void unpin(const unsigned &i)
Unpin the i-th stored variable.
Nodes are derived from Data, but, in addition, have a definite (Eulerian) position in a space of a gi...
bool is_hanging() const
Test whether the node is geometrically hanging.
///////////////////////////////////////////////////////////////////////////
void identify_pressure_data(std::set< std::pair< Data *, unsigned >> &paired_pressure_data)
Add to the set paired_pressure_data pairs containing.
void identify_load_data(std::set< std::pair< Data *, unsigned >> &paired_load_data)
Add to the set paired_load_data pairs of pointers to data objects and unsignedegers that index the va...
void unpin_all_internal_pressure_dofs()
Unpin all internal pressure dofs.
///////////////////////////////////////////////////////////////////////// ///////////////////////////...
void pin_all_nodal_pressure_dofs()
Pin all nodal pressure dofs.
void identify_pressure_data(std::set< std::pair< Data *, unsigned >> &paired_pressure_data)
Add to the set paired_pressure_data pairs containing.
void unpin_proper_nodal_pressure_dofs()
Unpin the proper nodal pressure dofs.
void unpin_all_nodal_pressure_dofs()
Unpin all pressure dofs.
void identify_load_data(std::set< std::pair< Data *, unsigned >> &paired_load_data)
Add to the set paired_load_data pairs containing.
//////////////////////////////////////////////////////////////////// ////////////////////////////////...