Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
IFOS3D
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
7
Issues
7
List
Boards
Labels
Service Desk
Milestones
Operations
Operations
Incidents
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
GPIAG-Software
IFOS3D
Commits
22e19348
Commit
22e19348
authored
Aug 16, 2016
by
Tilman Steinweg
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bugfix attemp
parent
2607899f
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
14 additions
and
21 deletions
+14
-21
src/exchange_Fv.c
src/exchange_Fv.c
+4
-17
src/fd.h
src/fd.h
+1
-1
src/ifos3d.c
src/ifos3d.c
+9
-3
No files found.
src/exchange_Fv.c
View file @
22e19348
...
...
@@ -24,7 +24,7 @@
#include "fd.h"
double
exchange_Fv
(
st_freq_velocity
*
fourier_vel
,
int
nf
,
double
exchange_Fv
(
float
****
vx
,
float
****
vy
,
float
****
vz
,
int
nf
,
st_buffer
*
buffer
,
MPI_Request
*
req_send
,
MPI_Request
*
req_rec
,
int
ntr_hess
){
...
...
@@ -32,25 +32,12 @@ st_buffer *buffer, MPI_Request * req_send, MPI_Request * req_rec, int ntr_hess){
extern
const
int
TAG1
,
TAG2
,
TAG3
,
TAG4
,
TAG5
,
TAG6
;
MPI_Status
status
;
int
i
,
j
,
k
,
l
,
n
,
nf1
,
nf2
,
m
,
p
;
int
i
,
j
,
k
,
l
,
n
,
nf1
,
nf2
,
m
;
double
time
=
0
.
0
;
/*, time1=0.0;*/
nf1
=
3
*
FDORDER
/
2
-
1
;
nf2
=
nf1
-
1
;
float
****
vx
=
fourier_vel
->
Fvx_re
;
float
****
vy
=
fourier_vel
->
Fvy_re
;
float
****
vz
=
fourier_vel
->
Fvz_re
;
/*if (LOG){
if (MYID==0) time1=MPI_Wtime();}*/
for
(
p
=
1
;
p
<=
2
;
p
++
){
if
(
p
==
2
){
float
****
vx
=
fourier_vel
->
Fvx_im
;
float
****
vy
=
fourier_vel
->
Fvy_im
;
float
****
vz
=
fourier_vel
->
Fvz_im
;
}
for
(
m
=
1
;
m
<=
nf
*
(
ntr_hess
+
1
);
m
++
){
...
...
@@ -335,7 +322,7 @@ st_buffer *buffer, MPI_Request * req_send, MPI_Request * req_rec, int ntr_hess){
}
}
}
/*if (LOG)
if (MYID==0){
time2=MPI_Wtime();
...
...
@@ -343,5 +330,5 @@ st_buffer *buffer, MPI_Request * req_send, MPI_Request * req_rec, int ntr_hess){
fprintf(FP," Real time for particle velocity exchange: \t %4.2f s.\n",time);
}*/
return
time
;
}
src/fd.h
View file @
22e19348
...
...
@@ -220,7 +220,7 @@ void exchange_v_rsg(st_velocity *vel,st_buffer *buffer);
double
exchange_v
(
st_velocity
*
vel
,
st_buffer
*
buffer
,
MPI_Request
*
req_send
,
MPI_Request
*
req_rec
);
double
exchange_Fv
(
st_freq_velocity
*
fourier_vel
,
int
nf
,
st_buffer
*
buffer
,
MPI_Request
*
req_send
,
MPI_Request
*
req_rec
,
int
ntr_hess
);
double
exchange_Fv
(
float
**
**
vx
,
float
**
**
vy
,
float
**
**
vz
,
int
nf
,
st_buffer
*
buffer
,
MPI_Request
*
req_send
,
MPI_Request
*
req_rec
,
int
ntr_hess
);
float
readdsk
(
FILE
*
fp_in
,
int
format
);
...
...
src/ifos3d.c
View file @
22e19348
...
...
@@ -843,7 +843,9 @@ MPI_Barrier(MPI_COMM_WORLD);
MPI_Barrier
(
MPI_COMM_WORLD
);
if
(
METHOD
){
/* exchange frequency domain wavefields */
exchange_Fv
(
fourier_vel_fw
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);}
exchange_Fv
(
fourier_vel_fw
->
Fvx_re
,
fourier_vel_fw
->
Fvy_re
,
fourier_vel_fw
->
Fvz_re
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);
exchange_Fv
(
fourier_vel_fw
->
Fvx_im
,
fourier_vel_fw
->
Fvy_im
,
fourier_vel_fw
->
Fvz_im
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);}
/*---------------START INVERSION-------------*/
...
...
@@ -978,14 +980,18 @@ MPI_Barrier(MPI_COMM_WORLD);
MPI_Barrier
(
MPI_COMM_WORLD
);
if
(
!
pshot
){
exchange_Fv
(
fourier_vel_back
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);
exchange_Fv
(
fourier_vel_back
->
Fvx_re
,
fourier_vel_back
->
Fvy_re
,
fourier_vel_back
->
Fvz_re
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);
exchange_Fv
(
fourier_vel_back
->
Fvx_im
,
fourier_vel_back
->
Fvy_im
,
fourier_vel_back
->
Fvz_im
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);
MPI_Barrier
(
MPI_COMM_WORLD
);
gradient_F
(
NX
,
NY
,
NZ
,
fourier_vel_fw
,
fourier_vel_back
,
grad
,
nt
,
mod
,
finv
,
nf
,
iteration
);
}
}
/*hloop*/
if
(
iteration
==
1
&&
HESS
&&
!
READ_HESS
){
exchange_Fv
(
fourier_vel_back
,
nf
,
velbuff
,
req_send
,
req_rec
,
ntr_hess
);
exchange_Fv
(
fourier_vel_back
->
Fvx_re
,
fourier_vel_back
->
Fvy_re
,
fourier_vel_back
->
Fvz_re
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);
exchange_Fv
(
fourier_vel_back
->
Fvx_im
,
fourier_vel_back
->
Fvy_im
,
fourier_vel_back
->
Fvz_im
,
nf
,
velbuff
,
req_send
,
req_rec
,
0
);
MPI_Barrier
(
MPI_COMM_WORLD
);
hess_F
(
NX
,
NY
,
NZ
,
fourier_vel_fw
,
fourier_vel_back
,
hessian
,
nt
,
mod
,
finv
,
nf
,
ntr_hess
);
}
...
...
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