Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
D
DOUAR WSMP
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
HUGG
DOUAR WSMP
Commits
6e433d27
Commit
6e433d27
authored
13 years ago
by
Dave Whipp
Browse files
Options
Downloads
Patches
Plain Diff
Added reading/echoing of boundary condition info
parent
28a2382d
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
src/read_input_file.f90
+302
-5
302 additions, 5 deletions
src/read_input_file.f90
with
302 additions
and
5 deletions
src/read_input_file.f90
+
302
−
5
View file @
6e433d27
...
...
@@ -17,7 +17,7 @@
!------------------------------------------------------------------------------|
subroutine
read_input_file
(
params
,
threadinfo
,
material0
,
mat
,
surface
,
boxes
,
&
sections
,
cube_faces
,
nest
)
sections
,
cube_faces
,
nest
,
bcdef
)
!------------------------------------------------------------------------------|
!(((((((((((((((( Purpose of the routine ))))))))))))))))))))))))))))))))))))))
...
...
@@ -132,6 +132,7 @@ type (box) boxes(params%nboxes)
type
(
cross_section
)
sections
(
params
%
nsections
)
type
(
face
),
dimension
(
6
)
::
cube_faces
type
(
nest_info
)
::
nest
type
(
bc_definition
)
::
bcdef
!------------------------------------------------------------------------------|
!(((((((((((((((( declaration of the subroutine internal variables )))))))))))))
...
...
@@ -515,6 +516,204 @@ if(iproc==0) then
end
if
call
mpi_bcast
(
params
%
invariants_2d
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
bcdef
%
bctype
=
''
if
(
iproc
.eq.
0
)
call
scanfile
(
params
%
infile
,
'bctype'
,
bcdef
%
bctype
,
ires
)
call
mpi_bcast
(
bcdef
%
bctype
,
40
,
mpi_character
,
0
,
mpi_comm_world
,
ierr
)
select
case
(
trim
(
bcdef
%
bctype
))
case
(
'basic'
)
bcdef
%
bcorder
=
'xyz'
if
(
iproc
.eq.
0
)
call
scanfile
(
params
%
infile
,
'bcorder'
,
bcdef
%
bcorder
,
ires
)
call
mpi_bcast
(
bcdef
%
bcorder
,
3
,
mpi_character
,
0
,
mpi_comm_world
,
ierr
)
bcdef
%
fixux0
=
.true.
bcdef
%
fixux1
=
.true.
bcdef
%
fixvx0
=
.true.
bcdef
%
fixvx1
=
.true.
bcdef
%
fixwx0
=
.true.
bcdef
%
fixwx1
=
.true.
bcdef
%
fixuy0
=
.true.
bcdef
%
fixuy1
=
.true.
bcdef
%
fixvy0
=
.true.
bcdef
%
fixvy1
=
.true.
bcdef
%
fixwy0
=
.true.
bcdef
%
fixwy1
=
.true.
bcdef
%
fixuz0
=
.true.
bcdef
%
fixuz1
=
.true.
bcdef
%
fixvz0
=
.true.
bcdef
%
fixvz1
=
.true.
bcdef
%
fixwz0
=
.true.
bcdef
%
fixwz1
=
.true.
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixux0'
,
answer
,
ires
)
bcdef
%
fixux0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixux1'
,
answer
,
ires
)
bcdef
%
fixux1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixvx0'
,
answer
,
ires
)
bcdef
%
fixvx0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixvx1'
,
answer
,
ires
)
bcdef
%
fixvx1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixwx0'
,
answer
,
ires
)
bcdef
%
fixwx0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixwx1'
,
answer
,
ires
)
bcdef
%
fixwx1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixuy0'
,
answer
,
ires
)
bcdef
%
fixuy0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixuy1'
,
answer
,
ires
)
bcdef
%
fixuy1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixvy0'
,
answer
,
ires
)
bcdef
%
fixvy0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixvy1'
,
answer
,
ires
)
bcdef
%
fixvy1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixwy0'
,
answer
,
ires
)
bcdef
%
fixwy0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixwy1'
,
answer
,
ires
)
bcdef
%
fixwy1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixuz0'
,
answer
,
ires
)
bcdef
%
fixuz0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixuz1'
,
answer
,
ires
)
bcdef
%
fixuz1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixvz0'
,
answer
,
ires
)
bcdef
%
fixvz0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixvz1'
,
answer
,
ires
)
bcdef
%
fixvz1
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixwz0'
,
answer
,
ires
)
bcdef
%
fixwz0
=
(
trim
(
answer
)
==
'T'
)
endif
if
(
iproc
==
0
)
then
call
scanfile
(
params
%
infile
,
'fixwz1'
,
answer
,
ires
)
bcdef
%
fixwz1
=
(
trim
(
answer
)
==
'T'
)
endif
call
mpi_bcast
(
bcdef
%
fixux0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixux1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixvx0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixvx1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixwx0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixwx1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixuy0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixuy1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixvy0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixvy1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixwy0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixwy1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixuz0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixuz1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixvz0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixvz1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixwz0
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
fixwz1
,
1
,
mpi_logical
,
0
,
mpi_comm_world
,
ierr
)
bcdef
%
ux0
=
0.d0
bcdef
%
ux1
=
0.d0
bcdef
%
vx0
=
0.d0
bcdef
%
vx1
=
0.d0
bcdef
%
wx0
=
0.d0
bcdef
%
wx1
=
0.d0
bcdef
%
uy0
=
0.d0
bcdef
%
uy1
=
0.d0
bcdef
%
vy0
=
0.d0
bcdef
%
vy1
=
0.d0
bcdef
%
wy0
=
0.d0
bcdef
%
wy1
=
0.d0
bcdef
%
uz0
=
0.d0
bcdef
%
uz1
=
0.d0
bcdef
%
vz0
=
0.d0
bcdef
%
vz1
=
0.d0
bcdef
%
wz0
=
0.d0
bcdef
%
wz1
=
0.d0
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'ux0'
,
bcdef
%
ux0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'ux1'
,
bcdef
%
ux1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'vx0'
,
bcdef
%
vx0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'vx1'
,
bcdef
%
vx1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'wx0'
,
bcdef
%
wx0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'wx1'
,
bcdef
%
wx1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'uy0'
,
bcdef
%
uy0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'uy1'
,
bcdef
%
uy1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'vy0'
,
bcdef
%
vy0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'vy1'
,
bcdef
%
vy1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'wy0'
,
bcdef
%
wy0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'wy1'
,
bcdef
%
wy1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'uz0'
,
bcdef
%
uz0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'uz1'
,
bcdef
%
uz1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'vz0'
,
bcdef
%
vz0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'vz1'
,
bcdef
%
vz1
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'wz0'
,
bcdef
%
wz0
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'wz1'
,
bcdef
%
wz1
,
ires
)
call
mpi_bcast
(
bcdef
%
ux0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
ux1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
vx0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
vx1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
wx0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
wx1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
uy0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
uy1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
vy0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
vy1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
wy0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
wy1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
uz0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
uz1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
vz0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
vz1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
wz0
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
wz1
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
case
(
'segmented_s-line'
)
bcdef
%
bc_parameters
=
0.d0
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param1'
,
bcdef
%
bc_parameters
(
1
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param2'
,
bcdef
%
bc_parameters
(
2
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param3'
,
bcdef
%
bc_parameters
(
3
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param4'
,
bcdef
%
bc_parameters
(
4
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param5'
,
bcdef
%
bc_parameters
(
5
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param6'
,
bcdef
%
bc_parameters
(
6
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param7'
,
bcdef
%
bc_parameters
(
7
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param8'
,
bcdef
%
bc_parameters
(
8
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param9'
,
bcdef
%
bc_parameters
(
9
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param10'
,
bcdef
%
bc_parameters
(
10
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param11'
,
bcdef
%
bc_parameters
(
11
),
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'bc_param12'
,
bcdef
%
bc_parameters
(
12
),
ires
)
call
mpi_bcast
(
bcdef
%
bc_parameters
,
12
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
end
select
bcdef
%
utrans
=
0.d0
bcdef
%
vtrans
=
0.d0
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'utrans'
,
bcdef
%
utrans
,
ires
)
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'vtrans'
,
bcdef
%
vtrans
,
ires
)
call
mpi_bcast
(
bcdef
%
utrans
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
call
mpi_bcast
(
bcdef
%
vtrans
,
1
,
mpi_double_precision
,
0
,
mpi_comm_world
,
ierr
)
params
%
npmin
=
8
if
(
iproc
==
0
)
call
scanfile
(
params
%
infile
,
'npmin'
,
params
%
npmin
,
ires
)
call
mpi_bcast
(
params
%
npmin
,
1
,
mpi_integer
,
0
,
mpi_comm_world
,
ierr
)
...
...
@@ -864,7 +1063,6 @@ endif
!params%distance_exponent=-log(2.d0)/log(cos(params%anglemax))
params
%
distance_exponent
=
1.d0
! Input values are now written to stdout or log files here
if
(
params
%
debug
.gt.
0
.and.
iproc
.eq.
0
)
then
write
(
*
,
'(a)'
)
shift
//
'Input file values: '
...
...
@@ -887,7 +1085,7 @@ if (params%debug.gt.0 .and. iproc.eq.0) then
if
(
trim
(
mat
(
i
)
%
plasticity_type
)
.ne.
'No'
)
then
write
(
*
,
'(a,i4)'
)
shift
//
'Plasticity parameters for material '
,
i
do
j
=
1
,
9
write
(
*
,
'(a,i1,a2,e11.4)'
)
shift
//
'plasticity parameter '
,
j
,
'
:
'
,
mat
(
i
)
%
plasticity_parameters
(
j
)
write
(
*
,
'(a,i1,a2,e11.4)'
)
shift
//
'plasticity parameter '
,
j
,
' '
,
mat
(
i
)
%
plasticity_parameters
(
j
)
enddo
endif
write
(
*
,
'(a,e11.4)'
)
shift
//
'ztrans mat '
,
mat
(
i
)
%
ztrans
...
...
@@ -957,7 +1155,6 @@ if (params%debug.gt.0 .and. iproc.eq.0) then
write
(
*
,
'(a,i4)'
)
shift
//
'refine_criterion '
,
params
%
refine_criterion
write
(
*
,
'(a,e11.4)'
)
shift
//
'octree_refine_ratio '
,
params
%
octree_refine_ratio
write
(
*
,
'(a,e11.4)'
)
shift
//
'courant '
,
params
%
courant
write
(
*
,
'(a,l1)'
)
shift
//
'invariants_2d '
,
params
%
invariants_2d
write
(
*
,
'(a,i4)'
)
shift
//
'npmin '
,
params
%
npmin
write
(
*
,
'(a,i4)'
)
shift
//
'npmax '
,
params
%
npmax
write
(
*
,
'(a,i4)'
)
shift
//
'griditer '
,
params
%
griditer
...
...
@@ -1020,6 +1217,56 @@ if (params%debug.gt.0 .and. iproc.eq.0) then
write
(
*
,
'(a,i4)'
)
shift
//
'baselevely0 '
,
params
%
baselevely0
write
(
*
,
'(a,i4)'
)
shift
//
'baselevely1 '
,
params
%
baselevely1
write
(
*
,
'(a,l1)'
)
shift
//
'compute_qpgram '
,
params
%
compute_qpgram
write
(
*
,
'(a)'
)
shift
//
'--- Boundary condition parameters ---'
write
(
*
,
'(a,l1)'
)
shift
//
'invariants_2d '
,
params
%
invariants_2d
write
(
*
,
'(a,a)'
)
shift
//
'bctype '
,
bcdef
%
bctype
select
case
(
trim
(
bcdef
%
bctype
))
case
(
'basic'
)
write
(
*
,
'(a,a)'
)
shift
//
'bcorder '
,
bcdef
%
bcorder
write
(
*
,
'(a,l1)'
)
shift
//
'fixux0 '
,
bcdef
%
fixux0
write
(
*
,
'(a,l1)'
)
shift
//
'fixux1 '
,
bcdef
%
fixux1
write
(
*
,
'(a,l1)'
)
shift
//
'fixvx0 '
,
bcdef
%
fixvx0
write
(
*
,
'(a,l1)'
)
shift
//
'fixvx1 '
,
bcdef
%
fixvx1
write
(
*
,
'(a,l1)'
)
shift
//
'fixwx0 '
,
bcdef
%
fixwx0
write
(
*
,
'(a,l1)'
)
shift
//
'fixwx1 '
,
bcdef
%
fixwx1
write
(
*
,
'(a,l1)'
)
shift
//
'fixuy0 '
,
bcdef
%
fixuy0
write
(
*
,
'(a,l1)'
)
shift
//
'fixuy1 '
,
bcdef
%
fixuy1
write
(
*
,
'(a,l1)'
)
shift
//
'fixvy0 '
,
bcdef
%
fixvy0
write
(
*
,
'(a,l1)'
)
shift
//
'fixvy1 '
,
bcdef
%
fixvy1
write
(
*
,
'(a,l1)'
)
shift
//
'fixwy0 '
,
bcdef
%
fixwy0
write
(
*
,
'(a,l1)'
)
shift
//
'fixwy1 '
,
bcdef
%
fixwy1
write
(
*
,
'(a,l1)'
)
shift
//
'fixuz0 '
,
bcdef
%
fixuz0
write
(
*
,
'(a,l1)'
)
shift
//
'fixuz1 '
,
bcdef
%
fixuz1
write
(
*
,
'(a,l1)'
)
shift
//
'fixvz0 '
,
bcdef
%
fixvz0
write
(
*
,
'(a,l1)'
)
shift
//
'fixvz1 '
,
bcdef
%
fixvz1
write
(
*
,
'(a,l1)'
)
shift
//
'fixwz0 '
,
bcdef
%
fixwz0
write
(
*
,
'(a,l1)'
)
shift
//
'fixwz1 '
,
bcdef
%
fixwz1
write
(
*
,
'(a,e11.4)'
)
shift
//
'ux0 '
,
bcdef
%
ux0
write
(
*
,
'(a,e11.4)'
)
shift
//
'ux1 '
,
bcdef
%
ux1
write
(
*
,
'(a,e11.4)'
)
shift
//
'vx0 '
,
bcdef
%
vx0
write
(
*
,
'(a,e11.4)'
)
shift
//
'vx1 '
,
bcdef
%
vx1
write
(
*
,
'(a,e11.4)'
)
shift
//
'wx0 '
,
bcdef
%
wx0
write
(
*
,
'(a,e11.4)'
)
shift
//
'wx1 '
,
bcdef
%
wx1
write
(
*
,
'(a,e11.4)'
)
shift
//
'uy0 '
,
bcdef
%
uy0
write
(
*
,
'(a,e11.4)'
)
shift
//
'uy1 '
,
bcdef
%
uy1
write
(
*
,
'(a,e11.4)'
)
shift
//
'vy0 '
,
bcdef
%
vy0
write
(
*
,
'(a,e11.4)'
)
shift
//
'vy1 '
,
bcdef
%
vy1
write
(
*
,
'(a,e11.4)'
)
shift
//
'wy0 '
,
bcdef
%
wy0
write
(
*
,
'(a,e11.4)'
)
shift
//
'wy1 '
,
bcdef
%
wy1
write
(
*
,
'(a,e11.4)'
)
shift
//
'uz0 '
,
bcdef
%
uz0
write
(
*
,
'(a,e11.4)'
)
shift
//
'uz1 '
,
bcdef
%
uz1
write
(
*
,
'(a,e11.4)'
)
shift
//
'vz0 '
,
bcdef
%
vz0
write
(
*
,
'(a,e11.4)'
)
shift
//
'vz1 '
,
bcdef
%
vz1
write
(
*
,
'(a,e11.4)'
)
shift
//
'wz0 '
,
bcdef
%
wz0
write
(
*
,
'(a,e11.4)'
)
shift
//
'wz1 '
,
bcdef
%
wz1
case
(
'segmented_s-line'
)
write
(
*
,
'(a)'
)
shift
//
'Boundary condition parameters'
do
i
=
1
,
12
write
(
*
,
'(a,i2,a,e11.4)'
)
shift
//
'bc_parameter '
,
i
,
' '
,
bcdef
%
bc_parameters
(
i
)
enddo
end
select
write
(
*
,
'(a,e11.4)'
)
shift
//
'utrans '
,
bcdef
%
utrans
write
(
*
,
'(a,e11.4)'
)
shift
//
'vtrans '
,
bcdef
%
vtrans
write
(
*
,
'(a,l1)'
)
shift
//
'isostasy '
,
params
%
isostasy
write
(
*
,
'(a,l1)'
)
shift
//
'flexure '
,
params
%
flexure
write
(
*
,
'(a,l1)'
)
shift
//
'isobc '
,
params
%
isobc
...
...
@@ -1192,6 +1439,56 @@ if (params%debug.gt.1) then
write
(
threadinfo
%
Logunit
,
'(a32,i4)'
)
'baselevely0 '
,
params
%
baselevely0
write
(
threadinfo
%
Logunit
,
'(a32,i4)'
)
'baselevely1 '
,
params
%
baselevely1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'compute_qpgram '
,
params
%
compute_qpgram
write
(
threadinfo
%
Logunit
,
'(a)'
)
'--- Boundary condition parameters ---'
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'invariants_2d '
,
params
%
invariants_2d
write
(
threadinfo
%
Logunit
,
'(a32,a)'
)
'bctype '
,
bcdef
%
bctype
select
case
(
trim
(
bcdef
%
bctype
))
case
(
'basic'
)
write
(
threadinfo
%
Logunit
,
'(a32,a)'
)
'bcorder '
,
bcdef
%
bcorder
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixux0 '
,
bcdef
%
fixux0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixux1 '
,
bcdef
%
fixux1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixvx0 '
,
bcdef
%
fixvx0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixvx1 '
,
bcdef
%
fixvx1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixwx0 '
,
bcdef
%
fixwx0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixwx1 '
,
bcdef
%
fixwx1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixuy0 '
,
bcdef
%
fixuy0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixuy1 '
,
bcdef
%
fixuy1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixvy0 '
,
bcdef
%
fixvy0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixvy1 '
,
bcdef
%
fixvy1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixwy0 '
,
bcdef
%
fixwy0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixwy1 '
,
bcdef
%
fixwy1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixuz0 '
,
bcdef
%
fixuz0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixuz1 '
,
bcdef
%
fixuz1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixvz0 '
,
bcdef
%
fixvz0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixvz1 '
,
bcdef
%
fixvz1
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixwz0 '
,
bcdef
%
fixwz0
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'fixwz1 '
,
bcdef
%
fixwz1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'ux0 '
,
bcdef
%
ux0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'ux1 '
,
bcdef
%
ux1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'vx0 '
,
bcdef
%
vx0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'vx1 '
,
bcdef
%
vx1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'wx0 '
,
bcdef
%
wx0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'wx1 '
,
bcdef
%
wx1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'uy0 '
,
bcdef
%
uy0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'uy1 '
,
bcdef
%
uy1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'vy0 '
,
bcdef
%
vy0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'vy1 '
,
bcdef
%
vy1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'wy0 '
,
bcdef
%
wy0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'wy1 '
,
bcdef
%
wy1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'uz0 '
,
bcdef
%
uz0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'uz1 '
,
bcdef
%
uz1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'vz0 '
,
bcdef
%
vz0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'vz1 '
,
bcdef
%
vz1
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'wz0 '
,
bcdef
%
wz0
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'wz1 '
,
bcdef
%
wz1
case
(
'segmented_s-line'
)
write
(
threadinfo
%
Logunit
,
'(a)'
)
'Boundary condition parameters'
do
i
=
1
,
12
write
(
threadinfo
%
Logunit
,
'(a32,i2,a,e11.4)'
)
'bc_parameter '
,
i
,
' '
,
bcdef
%
bc_parameters
(
i
)
enddo
end
select
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'utrans '
,
bcdef
%
utrans
write
(
threadinfo
%
Logunit
,
'(a32,e11.4)'
)
'vtrans '
,
bcdef
%
vtrans
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'isostasy '
,
params
%
isostasy
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'flexure '
,
params
%
flexure
write
(
threadinfo
%
Logunit
,
'(a32,l1)'
)
'isobc '
,
params
%
isobc
...
...
@@ -1214,7 +1511,7 @@ endif
if
(
iproc
.eq.
0
)
call
flush
(
8
)
if
(
params
%
debug
.gt.
1
)
call
flush
(
threadinfo
%
logunit
)
!
if (iproc.eq.0) call system ('rm fort.8')
if
(
iproc
.eq.
0
)
call
system
(
'rm fort.8'
)
end
subroutine
read_input_file
!------------------------------------------------------------------------------|
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment