. ├── .gitattributes ├── .github │   └── workflows │   ├── JOSS-draft.yml │   ├── build_and_test.yml │   └── linter.yml ├── .gitignore ├── .zenodo.json ├── CITATION.cff ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Doxyfile ├── LICENSE ├── Makefile ├── README.md ├── directory_structure.txt ├── docs │   ├── CSRC Report on MOLE.pdf │   ├── Curvilinear operators.pdf │   ├── DOXY_C++ │   │   ├── README_8md.html │   │   ├── annotated.html │   │   ├── annotated_dup.js │   │   ├── bc_s.png │   │   ├── bc_sd.png │   │   ├── classDivergence-members.html │   │   ├── classDivergence.html │   │   ├── classDivergence.js │   │   ├── classDivergence__inherit__graph.dot │   │   ├── classGradient-members.html │   │   ├── classGradient.html │   │   ├── classGradient.js │   │   ├── classGradient__inherit__graph.dot │   │   ├── classInterpol-members.html │   │   ├── classInterpol.html │   │   ├── classInterpol.js │   │   ├── classInterpol__inherit__graph.dot │   │   ├── classLaplacian-members.html │   │   ├── classLaplacian.html │   │   ├── classLaplacian.js │   │   ├── classLaplacian__inherit__graph.dot │   │   ├── classMixedBC-members.html │   │   ├── classMixedBC.html │   │   ├── classMixedBC.js │   │   ├── classMixedBC__inherit__graph.dot │   │   ├── classRobinBC-members.html │   │   ├── classRobinBC.html │   │   ├── classRobinBC.js │   │   ├── classRobinBC__inherit__graph.dot │   │   ├── classUtils-members.html │   │   ├── classUtils.html │   │   ├── classUtils.js │   │   ├── classes.html │   │   ├── clipboard.js │   │   ├── closed.png │   │   ├── cookie.js │   │   ├── dir_000001_000003.html │   │   ├── dir_00a4bb3ce66f976b38540299ca317c02.html │   │   ├── dir_00a4bb3ce66f976b38540299ca317c02.js │   │   ├── dir_00a4bb3ce66f976b38540299ca317c02_dep.dot │   │   ├── dir_681e850943e0c5d98f777e923818a5ff.html │   │   ├── dir_681e850943e0c5d98f777e923818a5ff.js │   │   ├── dir_681e850943e0c5d98f777e923818a5ff_dep.dot │   │   ├── dir_68267d1309a1af8e8297ef4c3efbcdba.html │   │   ├── dir_68267d1309a1af8e8297ef4c3efbcdba.js │   │   ├── dir_d28a4824dc47e487b107a5db32ef43c4.html │   │   ├── dir_d28a4824dc47e487b107a5db32ef43c4.js │   │   ├── dir_d28a4824dc47e487b107a5db32ef43c4_dep.dot │   │   ├── divergence_8cpp.html │   │   ├── divergence_8cpp__incl.dot │   │   ├── divergence_8cpp_source.html │   │   ├── divergence_8h.html │   │   ├── divergence_8h.js │   │   ├── divergence_8h__dep__incl.dot │   │   ├── divergence_8h__incl.dot │   │   ├── divergence_8h_source.html │   │   ├── doc.svg │   │   ├── docd.svg │   │   ├── doxygen.css │   │   ├── doxygen.svg │   │   ├── doxygen_crawl.html │   │   ├── dynsections.js │   │   ├── elliptic1D_8cpp.html │   │   ├── elliptic1D_8cpp.js │   │   ├── elliptic1D_8cpp__incl.dot │   │   ├── elliptic1D_8cpp_source.html │   │   ├── elliptic2D_8cpp.html │   │   ├── elliptic2D_8cpp.js │   │   ├── elliptic2D_8cpp__incl.dot │   │   ├── elliptic2D_8cpp_source.html │   │   ├── examples_2examples__C_09_09_2README_8md.html │   │   ├── files.html │   │   ├── files_dup.js │   │   ├── folderclosed.svg │   │   ├── folderclosedd.svg │   │   ├── folderopen.svg │   │   ├── folderopend.svg │   │   ├── functions.html │   │   ├── functions_func.html │   │   ├── globals.html │   │   ├── globals_defs.html │   │   ├── globals_func.html │   │   ├── globals_type.html │   │   ├── gradient_8cpp.html │   │   ├── gradient_8cpp__incl.dot │   │   ├── gradient_8cpp_source.html │   │   ├── gradient_8h.html │   │   ├── gradient_8h.js │   │   ├── gradient_8h__dep__incl.dot │   │   ├── gradient_8h__incl.dot │   │   ├── gradient_8h_source.html │   │   ├── graph_legend.dot │   │   ├── graph_legend.html │   │   ├── hierarchy.html │   │   ├── hierarchy.js │   │   ├── index.html │   │   ├── inherit_graph_0.dot │   │   ├── inherit_graph_1.dot │   │   ├── inherits.html │   │   ├── interpol_8cpp.html │   │   ├── interpol_8cpp__incl.dot │   │   ├── interpol_8cpp_source.html │   │   ├── interpol_8h.html │   │   ├── interpol_8h.js │   │   ├── interpol_8h__dep__incl.dot │   │   ├── interpol_8h__incl.dot │   │   ├── interpol_8h_source.html │   │   ├── jquery.js │   │   ├── laplacian_8cpp.html │   │   ├── laplacian_8cpp__incl.dot │   │   ├── laplacian_8cpp_source.html │   │   ├── laplacian_8h.html │   │   ├── laplacian_8h.js │   │   ├── laplacian_8h__dep__incl.dot │   │   ├── laplacian_8h__incl.dot │   │   ├── laplacian_8h_source.html │   │   ├── logo.png │   │   ├── menu.js │   │   ├── menudata.js │   │   ├── minus.svg │   │   ├── minusd.svg │   │   ├── mixedbc_8cpp.html │   │   ├── mixedbc_8cpp__incl.dot │   │   ├── mixedbc_8cpp_source.html │   │   ├── mixedbc_8h.html │   │   ├── mixedbc_8h.js │   │   ├── mixedbc_8h__dep__incl.dot │   │   ├── mixedbc_8h__incl.dot │   │   ├── mixedbc_8h_source.html │   │   ├── mole_8h.html │   │   ├── mole_8h__dep__incl.dot │   │   ├── mole_8h__incl.dot │   │   ├── mole_8h_source.html │   │   ├── nav_f.png │   │   ├── nav_fd.png │   │   ├── nav_g.png │   │   ├── nav_h.png │   │   ├── nav_hd.png │   │   ├── navtree.css │   │   ├── navtree.js │   │   ├── navtreedata.js │   │   ├── navtreeindex0.js │   │   ├── open.png │   │   ├── operators_8h.html │   │   ├── operators_8h.js │   │   ├── operators_8h__dep__incl.dot │   │   ├── operators_8h__incl.dot │   │   ├── operators_8h_source.html │   │   ├── plus.svg │   │   ├── plusd.svg │   │   ├── resize.js │   │   ├── robinbc_8cpp.html │   │   ├── robinbc_8cpp__incl.dot │   │   ├── robinbc_8cpp_source.html │   │   ├── robinbc_8h.html │   │   ├── robinbc_8h.js │   │   ├── robinbc_8h__dep__incl.dot │   │   ├── robinbc_8h__incl.dot │   │   ├── robinbc_8h_source.html │   │   ├── schrodinger1D_8cpp.html │   │   ├── schrodinger1D_8cpp.js │   │   ├── schrodinger1D_8cpp__incl.dot │   │   ├── schrodinger1D_8cpp_source.html │   │   ├── search │   │   │   ├── all_0.js │   │   │   ├── all_1.js │   │   │   ├── all_2.js │   │   │   ├── all_3.js │   │   │   ├── all_4.js │   │   │   ├── all_5.js │   │   │   ├── all_6.js │   │   │   ├── all_7.js │   │   │   ├── all_8.js │   │   │   ├── all_9.js │   │   │   ├── all_a.js │   │   │   ├── classes_0.js │   │   │   ├── classes_1.js │   │   │   ├── classes_2.js │   │   │   ├── classes_3.js │   │   │   ├── classes_4.js │   │   │   ├── classes_5.js │   │   │   ├── classes_6.js │   │   │   ├── close.svg │   │   │   ├── defines_0.js │   │   │   ├── files_0.js │   │   │   ├── files_1.js │   │   │   ├── files_2.js │   │   │   ├── files_3.js │   │   │   ├── files_4.js │   │   │   ├── files_5.js │   │   │   ├── files_6.js │   │   │   ├── files_7.js │   │   │   ├── files_8.js │   │   │   ├── files_9.js │   │   │   ├── files_a.js │   │   │   ├── functions_0.js │   │   │   ├── functions_1.js │   │   │   ├── functions_2.js │   │   │   ├── functions_3.js │   │   │   ├── functions_4.js │   │   │   ├── functions_5.js │   │   │   ├── functions_6.js │   │   │   ├── functions_7.js │   │   │   ├── mag.svg │   │   │   ├── mag_d.svg │   │   │   ├── mag_sel.svg │   │   │   ├── mag_seld.svg │   │   │   ├── pages_0.js │   │   │   ├── pages_1.js │   │   │   ├── pages_2.js │   │   │   ├── pages_3.js │   │   │   ├── search.css │   │   │   ├── search.js │   │   │   ├── searchdata.js │   │   │   └── typedefs_0.js │   │   ├── splitbar.png │   │   ├── splitbard.png │   │   ├── sync_off.png │   │   ├── sync_on.png │   │   ├── tab_a.png │   │   ├── tab_ad.png │   │   ├── tab_b.png │   │   ├── tab_bd.png │   │   ├── tab_h.png │   │   ├── tab_hd.png │   │   ├── tab_s.png │   │   ├── tab_sd.png │   │   ├── tabs.css │   │   ├── transport1D_8cpp.html │   │   ├── transport1D_8cpp.js │   │   ├── transport1D_8cpp__incl.dot │   │   ├── transport1D_8cpp_source.html │   │   ├── utils_8cpp.html │   │   ├── utils_8cpp__incl.dot │   │   ├── utils_8cpp_source.html │   │   ├── utils_8h.html │   │   ├── utils_8h.js │   │   ├── utils_8h__dep__incl.dot │   │   ├── utils_8h__incl.dot │   │   └── utils_8h_source.html │   ├── JOSS │   │   ├── fig1.png │   │   ├── paper.bib │   │   └── paper.md │   ├── MOLE User's Manual (MATLAB version).pdf │   ├── MOLE_C++_Quick_Guide.pdf │   ├── Nonuniform operators.pdf │   ├── Why staggered.pdf │   ├── doc_MATLAB │   │   ├── README.md │   │   ├── alpha.png │   │   ├── c++.png │   │   ├── c.png │   │   ├── demoicon.gif │   │   ├── down.png │   │   ├── doxysearch.php │   │   ├── fortran.png │   │   ├── hp.png │   │   ├── index.html │   │   ├── left.png │   │   ├── linux.png │   │   ├── m2html.css │   │   ├── matlabicon.gif │   │   ├── menu.html │   │   ├── mex.png │   │   ├── mole_MATLAB │   │   │   ├── DI2.html │   │   │   ├── DI3.html │   │   │   ├── GI1.html │   │   │   ├── GI13.html │   │   │   ├── GI2.html │   │   │   ├── curl2D.html │   │   │   ├── div.html │   │   │   ├── div2D.html │   │   │   ├── div2DCurv.html │   │   │   ├── div2DNonUniform.html │   │   │   ├── div3D.html │   │   │   ├── div3DCurv.html │   │   │   ├── div3DNonUniform.html │   │   │   ├── divNonUniform.html │   │   │   ├── grad.html │   │   │   ├── grad2D.html │   │   │   ├── grad2DCurv.html │   │   │   ├── grad2DNonUniform.html │   │   │   ├── grad3D.html │   │   │   ├── grad3DCurv.html │   │   │   ├── grad3DNonUniform.html │   │   │   ├── gradNonUniform.html │   │   │   ├── graph.dot │   │   │   ├── graph.html │   │   │   ├── graph.map │   │   │   ├── graph.png │   │   │   ├── gridGen.html │   │   │   ├── interpol.html │   │   │   ├── interpol2D.html │   │   │   ├── interpol3D.html │   │   │   ├── interpolD.html │   │   │   ├── interpolD2D.html │   │   │   ├── interpolD3D.html │   │   │   ├── jacobian2D.html │   │   │   ├── jacobian3D.html │   │   │   ├── lap.html │   │   │   ├── lap2D.html │   │   │   ├── lap3D.html │   │   │   ├── menu.html │   │   │   ├── mimeticB.html │   │   │   ├── nodal.html │   │   │   ├── nodal2D.html │   │   │   ├── nodal3D.html │   │   │   ├── robinBC.html │   │   │   ├── robinBC2D.html │   │   │   ├── robinBC3D.html │   │   │   ├── tensorGrad2D.html │   │   │   ├── tfi.html │   │   │   ├── ttm.html │   │   │   ├── weightsP.html │   │   │   ├── weightsP2D.html │   │   │   ├── weightsQ.html │   │   │   └── weightsQ2D.html │   │   ├── pcode.png │   │   ├── right.png │   │   ├── sgi.png │   │   ├── simulinkicon.gif │   │   ├── solaris.png │   │   ├── up.png │   │   └── windows.png │   └── images │   └── 4thOrder.png ├── examples │   ├── examples_C++ │   │   ├── Makefile │   │   ├── README.md │   │   ├── elliptic1D.cpp │   │   ├── elliptic2D.cpp │   │   ├── schrodinger1D.cpp │   │   └── transport1D.cpp │   └── examples_MATLAB │   ├── KG_product.m │   ├── RK2.m │   ├── RK4.m │   ├── backward_euler.m │   ├── burgers1D.m │   ├── compact_operators │   │   ├── README.md │   │   └── compact.m │   ├── convection_diffusion.m │   ├── elliptic1D.m │   ├── elliptic2D.m │   ├── elliptic2D_case2.m │   ├── elliptic2D_nodal_curv.m │   ├── elliptic2D_nodal_curv_sinusoidal.m │   ├── elliptic3D.m │   ├── genCurvGrid.m │   ├── helmholtz2D_wifi.m │   ├── hyperbolic1D.m │   ├── hyperbolic1D_lax_friedrichs.m │   ├── hyperbolic1D_upwind.m │   ├── lock_exchange.m │   ├── minimal_poisson2D.m │   ├── parabolic1D.m │   ├── richards.m │   ├── schrodinger2D.m │   ├── test_curl.m │   ├── test_div2DCurv.m │   ├── test_div3DCurv.m │   ├── test_grad2DCurv.m │   ├── test_grad3DCurv.m │   ├── test_lap3DCurv.m │   ├── test_lap3DCurv_case2.m │   ├── test_nodal2DCurv.m │   ├── van_der_pol.m │   ├── wave1D.m │   ├── wave1D_case2.m │   ├── wave2D.m │   └── wave2D_case2.m ├── images │   ├── 4thOrder.png │   ├── 4thOrder2.png │   ├── 4thOrder3.png │   ├── WavyGrid.png │   ├── burgers.png │   ├── grid.png │   ├── grid2.png │   └── wave2D.png ├── logo.png ├── src │   ├── mole_C++ │   │   ├── Makefile │   │   ├── divergence.cpp │   │   ├── divergence.h │   │   ├── gradient.cpp │   │   ├── gradient.h │   │   ├── interpol.cpp │   │   ├── interpol.h │   │   ├── laplacian.cpp │   │   ├── laplacian.h │   │   ├── mixedbc.cpp │   │   ├── mixedbc.h │   │   ├── mole.h │   │   ├── mole.pro │   │   ├── operators.h │   │   ├── robinbc.cpp │   │   ├── robinbc.h │   │   ├── utils.cpp │   │   └── utils.h │   └── mole_MATLAB │   ├── DI2.m │   ├── DI3.m │   ├── GI1.m │   ├── GI13.m │   ├── GI2.m │   ├── amean.m │   ├── boundaryIdx2D.m │   ├── curl2D.m │   ├── div.m │   ├── div2D.m │   ├── div2DCurv.m │   ├── div2DNonUniform.m │   ├── div3D.m │   ├── div3DCurv.m │   ├── div3DNonUniform.m │   ├── divNonUniform.m │   ├── grad.m │   ├── grad2D.m │   ├── grad2DCurv.m │   ├── grad2DNonUniform.m │   ├── grad3D.m │   ├── grad3DCurv.m │   ├── grad3DNonUniform.m │   ├── gradNonUniform.m │   ├── gridGen.m │   ├── grids │   │   ├── chevron │   │   │   ├── bottom.m │   │   │   ├── left.m │   │   │   ├── right.m │   │   │   └── top.m │   │   ├── horseshoe │   │   │   ├── bottom.m │   │   │   ├── left.m │   │   │   ├── right.m │   │   │   └── top.m │   │   └── swan │   │   ├── bottom.m │   │   ├── left.m │   │   ├── right.m │   │   └── top.m │   ├── hmean.m │   ├── interpol.m │   ├── interpol2D.m │   ├── interpol3D.m │   ├── interpolCentersToFacesD1D.m │   ├── interpolCentersToFacesD2D.m │   ├── interpolCentersToFacesD3D.m │   ├── interpolCentersToNodes1D.m │   ├── interpolCentersToNodes2D.m │   ├── interpolCentersToNodes3D.m │   ├── interpolD.m │   ├── interpolD2D.m │   ├── interpolD3D.m │   ├── interpolFacesToCentersG1D.m │   ├── interpolFacesToCentersG2D.m │   ├── interpolFacesToCentersG3D.m │   ├── interpolNodesToCenters1D.m │   ├── interpolNodesToCenters2D.m │   ├── interpolNodesToCenters3D.m │   ├── jacobian2D.m │   ├── jacobian3D.m │   ├── lap.m │   ├── lap2D.m │   ├── lap3D.m │   ├── mimeticB.m │   ├── mixedBC.m │   ├── mixedBC2D.m │   ├── mixedBC3D.m │   ├── neumann2DCurv.m │   ├── neumann3DCurv.m │   ├── nodal.m │   ├── nodal2D.m │   ├── nodal2DCurv.m │   ├── nodal3D.m │   ├── nodal3DCurv.m │   ├── rk4.m │   ├── robinBC.m │   ├── robinBC2D.m │   ├── robinBC3D.m │   ├── sidedNodal.m │   ├── tensorGrad2D.m │   ├── tfi.m │   ├── ttm.m │   ├── weightsP.m │   ├── weightsP2D.m │   ├── weightsQ.m │   └── weightsQ2D.m └── tests ├── tests_C++ │   ├── Makefile │   ├── test1.cpp │   ├── test2.cpp │   ├── test3.cpp │   ├── test4.cpp │   └── test5.cpp └── tests_MATLAB ├── run_tests.m ├── test1.m ├── test2.m ├── test3.m ├── test4.m ├── test5.m └── test6.m 25 directories, 506 files