) return (lam,master_mwes_and_fields_by_name) ### Parameters (note that this all is quite ad-hoc and preliminary here): mesh_filename="H.nmesh.h5" #jacobi_same_nonzero_pattern=True # Does not work yet! jacobi_same_nonzero_pattern=False max_order=2 krylov_max=100 max_it=1000000 my_mesh=nmesh.load(mesh_filename) (lam,master_mwes_and_fields_by_name) = jT_lam(mesh=my_mesh, sigma_el=su.of(sigma), # electrical conductivity sigma_th=su.of(k), # thermal conductivity c_heat=su.of(c_heat),# heat capacity T_initial=su.of(T_initial), ) (mwe_T,field_T) = master_mwes_and_fields_by_name['T'] sundialsbuffer_initial = ocaml.raw_make_field(mwe_T,[],"","sundials_initial") sundialsbuffer_final = ocaml.raw_make_field(mwe_T,[],"","sundials_final") sundialsbuffer_starting = ocaml.raw_make_field(mwe_T,[],"","sundials_work") ocaml.field_copy_into(field_T, sundialsbuffer_initial) ocaml.field_copy_into(field_T, sundialsbuffer_starting) (cvode,fun_timings)=ocaml.raw_make_linalg_machine_cvode(\
return (lam, master_mwes_and_fields_by_name) ### Parameters (note that this all is quite ad-hoc and preliminary here): mesh_filename = "H.nmesh.h5" #jacobi_same_nonzero_pattern=True # Does not work yet! jacobi_same_nonzero_pattern = False max_order = 2 krylov_max = 100 max_it = 1000000 my_mesh = nmesh.load(mesh_filename) (lam, master_mwes_and_fields_by_name) = jT_lam( mesh=my_mesh, sigma_el=su.of(sigma), # electrical conductivity sigma_th=su.of(k), # thermal conductivity c_heat=su.of(c_heat), # heat capacity T_initial=su.of(T_initial), ) (mwe_T, field_T) = master_mwes_and_fields_by_name['T'] sundialsbuffer_initial = ocaml.raw_make_field(mwe_T, [], "", "sundials_initial") sundialsbuffer_final = ocaml.raw_make_field(mwe_T, [], "", "sundials_final") sundialsbuffer_starting = ocaml.raw_make_field(mwe_T, [], "", "sundials_work") ocaml.field_copy_into(field_T, sundialsbuffer_initial) ocaml.field_copy_into(field_T, sundialsbuffer_starting)
) return (lam,master_mwes_and_fields_by_name) ### Parameters (note that this all is quite ad-hoc and preliminary here): mesh_filename="block.nmesh.h5" #jacobi_same_nonzero_pattern=True # Does not work yet! jacobi_same_nonzero_pattern=False max_order=2 krylov_max=100 max_it=1000000 my_mesh=nmesh.load(mesh_filename) (lam,master_mwes_and_fields_by_name) = jT_lam(mesh=my_mesh, sigma_el=su.of(sigma), # electrical conductivity sigma_th=su.of(k), # thermal conductivity c_heat=su.of(c_heat),# heat capacity T_initial=su.of(T_initial), ) (mwe_T,field_T) = master_mwes_and_fields_by_name['T'] sundialsbuffer_initial = ocaml.raw_make_field(mwe_T,[],"","sundials_initial") sundialsbuffer_final = ocaml.raw_make_field(mwe_T,[],"","sundials_final") sundialsbuffer_starting = ocaml.raw_make_field(mwe_T,[],"","sundials_work") ocaml.field_copy_into(field_T, sundialsbuffer_initial) ocaml.field_copy_into(field_T, sundialsbuffer_starting) (cvode,fun_timings)=ocaml.raw_make_linalg_machine_cvode(\