Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
MMFSolver
Nektar
Commits
370fa336
Commit
370fa336
authored
Jun 18, 2015
by
Spencer Sherwin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed static variable and made m_fromField a local variable
parent
5d7e8250
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
27 additions
and
28 deletions
+27
-28
utilities/FieldConvert/ProcessModules/ProcessInterpPoints.cpp
...ities/FieldConvert/ProcessModules/ProcessInterpPoints.cpp
+27
-27
utilities/FieldConvert/ProcessModules/ProcessInterpPoints.h
utilities/FieldConvert/ProcessModules/ProcessInterpPoints.h
+0
-1
No files found.
utilities/FieldConvert/ProcessModules/ProcessInterpPoints.cpp
View file @
370fa336
...
...
@@ -213,12 +213,12 @@ void ProcessInterpPoints::Process(po::variables_map &vm)
}
m_
fromField
=
boost
::
shared_ptr
<
Field
>
(
new
Field
());
FieldSharedPtr
fromField
=
boost
::
shared_ptr
<
Field
>
(
new
Field
());
std
::
vector
<
std
::
string
>
files
;
// set up session file for from field
files
.
push_back
(
m_config
[
"fromxml"
].
as
<
string
>
());
m_
fromField
->
m_session
=
LibUtilities
::
SessionReader
::
fromField
->
m_session
=
LibUtilities
::
SessionReader
::
CreateInstance
(
0
,
0
,
files
);
// Set up range based on min and max of local parallel partition
...
...
@@ -250,13 +250,13 @@ void ProcessInterpPoints::Process(po::variables_map &vm)
}
// setup rng parameters.
m_
fromField
->
m_graph
=
SpatialDomains
::
MeshGraph
::
Read
(
m_
fromField
->
m_session
,
rng
);
fromField
->
m_graph
=
SpatialDomains
::
MeshGraph
::
Read
(
fromField
->
m_session
,
rng
);
// Read in local from field partitions
const
SpatialDomains
::
ExpansionMap
&
expansions
=
m_
fromField
->
m_graph
->
GetExpansions
();
const
SpatialDomains
::
ExpansionMap
&
expansions
=
fromField
->
m_graph
->
GetExpansions
();
m_
fromField
->
m_fld
=
MemoryManager
<
LibUtilities
::
FieldIO
>
::
AllocateSharedPtr
(
m_
fromField
->
m_session
->
GetComm
());
fromField
->
m_fld
=
MemoryManager
<
LibUtilities
::
FieldIO
>
::
AllocateSharedPtr
(
fromField
->
m_session
->
GetComm
());
Array
<
OneD
,
int
>
ElementGIDs
(
expansions
.
size
());
SpatialDomains
::
ExpansionMap
::
const_iterator
expIt
;
...
...
@@ -269,49 +269,49 @@ void ProcessInterpPoints::Process(po::variables_map &vm)
}
string
fromfld
=
m_config
[
"fromfld"
].
as
<
string
>
();
m_
fromField
->
m_fld
->
Import
(
fromfld
,
m_
fromField
->
m_fielddef
,
m_
fromField
->
m_data
,
fromField
->
m_fld
->
Import
(
fromfld
,
fromField
->
m_fielddef
,
fromField
->
m_data
,
LibUtilities
::
NullFieldMetaDataMap
,
ElementGIDs
);
int
NumHomogeneousDir
=
m_
fromField
->
m_fielddef
[
0
]
->
m_numHomogeneousDir
;
int
NumHomogeneousDir
=
fromField
->
m_fielddef
[
0
]
->
m_numHomogeneousDir
;
//----------------------------------------------
// Set up Expansion information to use mode order from field
m_
fromField
->
m_graph
->
SetExpansions
(
m_
fromField
->
m_fielddef
);
fromField
->
m_graph
->
SetExpansions
(
fromField
->
m_fielddef
);
int
nfields
=
m_
fromField
->
m_fielddef
[
0
]
->
m_fields
.
size
();
int
nfields
=
fromField
->
m_fielddef
[
0
]
->
m_fields
.
size
();
m_
fromField
->
m_exp
.
resize
(
nfields
);
m_
fromField
->
m_exp
[
0
]
=
m_
fromField
->
SetUpFirstExpList
(
NumHomogeneousDir
,
true
);
fromField
->
m_exp
.
resize
(
nfields
);
fromField
->
m_exp
[
0
]
=
fromField
->
SetUpFirstExpList
(
NumHomogeneousDir
,
true
);
m_f
->
m_exp
.
resize
(
nfields
);
// declare auxiliary fields.
for
(
i
=
1
;
i
<
nfields
;
++
i
)
{
m_
fromField
->
m_exp
[
i
]
=
m_
fromField
->
AppendExpList
(
NumHomogeneousDir
);
fromField
->
m_exp
[
i
]
=
fromField
->
AppendExpList
(
NumHomogeneousDir
);
}
// load field into expansion in fromfield.
for
(
int
j
=
0
;
j
<
nfields
;
++
j
)
{
for
(
i
=
0
;
i
<
m_
fromField
->
m_fielddef
.
size
();
i
++
)
for
(
i
=
0
;
i
<
fromField
->
m_fielddef
.
size
();
i
++
)
{
m_
fromField
->
m_exp
[
j
]
->
ExtractDataToCoeffs
(
m_
fromField
->
m_fielddef
[
i
],
m_
fromField
->
m_data
[
i
],
m_
fromField
->
m_fielddef
[
0
]
->
m_fields
[
j
],
m_
fromField
->
m_exp
[
j
]
->
UpdateCoeffs
());
fromField
->
m_exp
[
j
]
->
ExtractDataToCoeffs
(
fromField
->
m_fielddef
[
i
],
fromField
->
m_data
[
i
],
fromField
->
m_fielddef
[
0
]
->
m_fields
[
j
],
fromField
->
m_exp
[
j
]
->
UpdateCoeffs
());
}
m_
fromField
->
m_exp
[
j
]
->
BwdTrans
(
m_
fromField
->
m_exp
[
j
]
->
GetCoeffs
(),
m_
fromField
->
m_exp
[
j
]
->
UpdatePhys
());
fromField
->
m_exp
[
j
]
->
BwdTrans
(
fromField
->
m_exp
[
j
]
->
GetCoeffs
(),
fromField
->
m_exp
[
j
]
->
UpdatePhys
());
Array
<
OneD
,
NekDouble
>
newPts
(
m_f
->
m_fieldPts
->
GetNpoints
());
m_f
->
m_fieldPts
->
AddField
(
newPts
,
m_
fromField
->
m_fielddef
[
0
]
->
m_fields
[
j
]);
m_f
->
m_fieldPts
->
AddField
(
newPts
,
fromField
->
m_fielddef
[
0
]
->
m_fields
[
j
]);
}
if
(
m_
fromField
->
m_session
->
GetComm
()
->
GetRank
()
==
0
)
if
(
fromField
->
m_session
->
GetComm
()
->
GetRank
()
==
0
)
{
cout
<<
"Interpolating ["
<<
flush
;
}
...
...
@@ -320,10 +320,10 @@ void ProcessInterpPoints::Process(po::variables_map &vm)
NekDouble
clamp_up
=
m_config
[
"clamptouppervalue"
].
as
<
NekDouble
>
();
NekDouble
def_value
=
m_config
[
"defaultvalue"
].
as
<
NekDouble
>
();
InterpolateFieldToPts
(
m_
fromField
->
m_exp
,
pts
,
InterpolateFieldToPts
(
fromField
->
m_exp
,
pts
,
clamp_low
,
clamp_up
,
def_value
);
if
(
m_
fromField
->
m_session
->
GetComm
()
->
GetRank
()
==
0
)
if
(
fromField
->
m_session
->
GetComm
()
->
GetRank
()
==
0
)
{
cout
<<
"]"
<<
endl
;
}
...
...
@@ -343,7 +343,7 @@ void ProcessInterpPoints::InterpolateFieldToPts(
int
nq1
=
pts
[
0
].
num_elements
();
int
elmtid
,
offset
;
int
r
,
f
;
static
int
intpts
=
0
;
int
intpts
=
0
;
// resize data field
m_f
->
m_data
.
resize
(
field0
.
size
());
...
...
utilities/FieldConvert/ProcessModules/ProcessInterpPoints.h
View file @
370fa336
...
...
@@ -62,7 +62,6 @@ class ProcessInterpPoints : public ProcessModule
virtual
void
Process
(
po
::
variables_map
&
vm
);
private:
FieldSharedPtr
m_fromField
;
void
InterpolateFieldToPts
(
vector
<
MultiRegions
::
ExpListSharedPtr
>
&
field0
,
Array
<
OneD
,
Array
<
OneD
,
NekDouble
>
>
&
pts
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment