diff --git a/bmad/modules/equal_mod.f90 b/bmad/modules/equal_mod.f90 index 923a6941c..10b02b79a 100644 --- a/bmad/modules/equal_mod.f90 +++ b/bmad/modules/equal_mod.f90 @@ -568,6 +568,7 @@ subroutine lat_equal_lat (lat_out, lat_in) type (lat_struct), intent(inout), target :: lat_out type (lat_struct), intent(in), target :: lat_in type (branch_struct), pointer :: branch_out +type (ele_struct), pointer :: ele type (control_struct), pointer :: c_in, c_out integer i, n, nb, ne, ie, n_out, n_in logical do_alloc @@ -602,9 +603,11 @@ subroutine lat_equal_lat (lat_out, lat_in) branch_out = lat_in%branch(i) branch_out%lat => lat_out do ie = 0, ubound(branch_out%ele, 1) - branch_out%ele(ie)%ix_ele = ie - branch_out%ele(ie)%ix_branch = i - branch_out%ele(ie)%branch => branch_out + ele => branch_out%ele(ie) + ele%ix_ele = ie + ele%ix_branch = i + ele%branch => branch_out + if (associated(ele%ptc_fibre)) nullify(ele%ptc_fibre) enddo enddo diff --git a/tao/code/tao_init.f90 b/tao/code/tao_init.f90 index 18fad9904..ccf451ee1 100644 --- a/tao/code/tao_init.f90 +++ b/tao/code/tao_init.f90 @@ -366,7 +366,6 @@ subroutine tao_init (err_flag) do i = lbound(s%u, 1), ubound(s%u, 1) u => s%u(i) - if (u%design_same_as_previous) u%model = s%u(i-1)%model u%design = u%model u%base = u%design @@ -375,8 +374,6 @@ subroutine tao_init (err_flag) u%model%name = 'model' u%base%name = 'base' - u%design%tao_branch = u%model%tao_branch - u%base%tao_branch = u%design%tao_branch u%data%design_value = u%data%model_value u%data%base_value = u%data%model_value u%data%good_design = u%data%good_model diff --git a/tao/version/tao_version_mod.f90 b/tao/version/tao_version_mod.f90 index 5fbc3736f..52b0f8601 100644 --- a/tao/version/tao_version_mod.f90 +++ b/tao/version/tao_version_mod.f90 @@ -6,5 +6,5 @@ !- module tao_version_mod -character(*), parameter :: tao_version_date = "2025/01/25 20:41:09" +character(*), parameter :: tao_version_date = "2025/01/27 17:39:40" end module