SUBROUTINE bounds_of_sector (rho_last, rho_now, rho_next, sector_left, & sector_right, start, finish, isector, & first_sector, last_sector) USE boundary_Module USE BasisRegions_Module USE fileunits_Module USE nrho_Module USE Time_Conv_Module ! I/O variables IMPLICIT NONE REAL(Kind=WP_Kind) rho_now, rho_last, rho_next, sector_left, sector_right REAL(Kind=WP_Kind) start, finish, Rho_Basis INTEGER isector, first_sector, last_sector, isect CHARACTER(LEN=21), PARAMETER:: procname='bounds_of_sector' Logical DEBUG REAL(Kind=WP_Kind) timeinfo IF(isector>max_sector)THEN WRITE(msg_unit,*) 'isector =',isector WRITE(msg_unit,*) 'max_sector =',max_sector CALL errormsg(msg_unit,procname, 'isector gt max_sector') ENDIF !----------------------------------------------------------------------- ! On the first CALL determine first_sector and last_sector !---------------------------------------------------------------------- IF(isector<=0)THEN first_sector=1 last_sector=NSectors DO isect=2,NSectors IF((basis_dist(isect-1)+basis_dist(isect))/2.d0<=start)THEN first_sector=isect ENDIF IF((basis_dist(isect)+basis_dist(isect+1))/2.d0