source: issm/trunk-jpl/src/c/modules/InputUpdateFromVectorx/InputUpdateFromVectorx.cpp@ 13622

Last change on this file since 13622 was 13622, checked in by Mathieu Morlighem, 12 years ago

CHG: cosmetics, removing all deboule blank lines and indent single white lines correctly

File size: 3.1 KB
Line 
1/*!\file InputUpdateFromVectorx
2 * \brief: update datasets using parameter inputs
3 */
4
5#include "./InputUpdateFromVectorx.h"
6#include "../../shared/shared.h"
7#include "../../include/include.h"
8#include "../../toolkits/toolkits.h"
9#include "../../EnumDefinitions/EnumDefinitions.h"
10
11void InputUpdateFromVectorx( Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,Vector<IssmDouble>* vector, int name, int type){
12
13 IssmDouble* serial_vector=NULL;
14
15 serial_vector=vector->ToMPISerial();
16
17 InputUpdateFromVectorx( elements,nodes, vertices, loads, materials, parameters,serial_vector,name, type);
18
19 /*Free ressources:*/
20 xDelete<IssmDouble>(serial_vector);
21}
22
23void InputUpdateFromVectorx( Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,IssmDouble* vector, int name, int type){
24
25 int i;
26
27 /*Update elements, nodes, loads and materials from inputs: */
28 for(i=0;i<elements->Size();i++){
29 Element* element=(Element*)elements->GetObjectByOffset(i);
30 element->InputUpdateFromVector(vector,name,type);
31 }
32 for(i=0;i<nodes->Size();i++){
33 Node* node=(Node*)nodes->GetObjectByOffset(i);
34 node->InputUpdateFromVector(vector,name,type);
35 }
36 for(i=0;i<loads->Size();i++){
37 Load* load=(Load*)loads->GetObjectByOffset(i);
38 load->InputUpdateFromVector(vector,name,type);
39 }
40 for(i=0;i<materials->Size();i++){
41 Material* material=(Material*)materials->GetObjectByOffset(i);
42 material->InputUpdateFromVector(vector,name,type);
43 }
44}
45
46void InputUpdateFromVectorx( Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int* vector, int name, int type){
47
48 int i;
49
50 /*Update elements, nodes, loads and materials from inputs: */
51 for(i=0;i<elements->Size();i++){
52 Element* element=(Element*)elements->GetObjectByOffset(i);
53 element->InputUpdateFromVector(vector,name,type);
54 }
55 for(i=0;i<nodes->Size();i++){
56 Node* node=(Node*)nodes->GetObjectByOffset(i);
57 node->InputUpdateFromVector(vector,name,type);
58 }
59 for(i=0;i<loads->Size();i++){
60 Load* load=(Load*)loads->GetObjectByOffset(i);
61 load->InputUpdateFromVector(vector,name,type);
62 }
63 for(i=0;i<materials->Size();i++){
64 Material* material=(Material*)materials->GetObjectByOffset(i);
65 material->InputUpdateFromVector(vector,name,type);
66 }
67}
68
69void InputUpdateFromVectorx( Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,bool* vector, int name, int type){
70
71 int i;
72
73 /*Update elements, nodes, loads and materials from inputs: */
74 for(i=0;i<elements->Size();i++){
75 Element* element=(Element*)elements->GetObjectByOffset(i);
76 element->InputUpdateFromVector(vector,name,type);
77 }
78 for(i=0;i<nodes->Size();i++){
79 Node* node=(Node*)nodes->GetObjectByOffset(i);
80 node->InputUpdateFromVector(vector,name,type);
81 }
82 for(i=0;i<loads->Size();i++){
83 Load* load=(Load*)loads->GetObjectByOffset(i);
84 load->InputUpdateFromVector(vector,name,type);
85 }
86 for(i=0;i<materials->Size();i++){
87 Material* material=(Material*)materials->GetObjectByOffset(i);
88 material->InputUpdateFromVector(vector,name,type);
89 }
90}
Note: See TracBrowser for help on using the repository browser.