cacmb/src/call_option.f90

54 lines
1.4 KiB
Fortran
Raw Normal View History

subroutine call_option(option, arg_pos)
use parameters
use opt_disl
use opt_group
2020-02-03 17:30:41 -05:00
use opt_orient
use opt_deform
use opt_delete
2020-10-13 11:57:20 -04:00
use opt_redef_box
2020-10-23 14:13:35 -04:00
use opt_slip_plane
use box
implicit none
integer, intent(inout) :: arg_pos
character(len=100), intent(in) :: option
select case(trim(adjustl(option)))
2020-11-18 16:03:28 -05:00
case('-disl','-dislgen', '-disloop','-vacancydisloop')
call dislocation(option, arg_pos)
case('-group')
call group(arg_pos)
case('-ow')
arg_pos = arg_pos + 1
case('-wrap')
arg_pos = arg_pos + 1
2020-02-03 17:30:41 -05:00
case('-orient')
call orient(arg_pos)
case('-unorient')
call unorient
arg_pos = arg_pos + 1
case('-boundary')
arg_pos=arg_pos+1
call get_command_argument(arg_pos, box_bc)
arg_pos=arg_pos+1
2020-03-05 16:19:30 -05:00
bound_called = .true.
case('-sbox_ori')
call sbox_ori(arg_pos)
case('-deform')
call deform(arg_pos)
case('-delete')
call run_delete(arg_pos)
2020-04-22 12:52:37 -04:00
case('-set_cac')
arg_pos=arg_pos +3
case('-set_types')
2021-01-12 11:46:50 -05:00
arg_pos = arg_pos + 2 + atom_types
2020-10-13 11:57:20 -04:00
case('-redef_box')
call redef_box(arg_pos)
2020-10-23 14:13:35 -04:00
case('-slip_plane')
call run_slip_plane(arg_pos)
case default
print *, 'Option ', trim(adjustl(option)), ' is not currently accepted.'
stop 3
end select
2020-04-22 12:52:37 -04:00
end subroutine call_option