{"id":21572071,"url":"https://github.com/zingale/teaching_codes","last_synced_at":"2026-01-04T10:06:00.735Z","repository":{"id":228813661,"uuid":"649129919","full_name":"zingale/teaching_codes","owner":"zingale","description":"some random teaching codes from throughout the years","archived":false,"fork":false,"pushed_at":"2023-06-03T21:56:28.000Z","size":142149,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-24T13:11:15.602Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Fortran","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zingale.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-06-03T21:55:05.000Z","updated_at":"2024-12-03T01:26:52.000Z","dependencies_parsed_at":"2024-03-20T16:33:05.771Z","dependency_job_id":null,"html_url":"https://github.com/zingale/teaching_codes","commit_stats":null,"previous_names":["zingale/teaching_codes"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zingale%2Fteaching_codes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zingale%2Fteaching_codes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zingale%2Fteaching_codes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zingale%2Fteaching_codes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zingale","download_url":"https://codeload.github.com/zingale/teaching_codes/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244166762,"owners_count":20409180,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-24T11:18:07.324Z","updated_at":"2026-01-04T10:06:00.661Z","avatar_url":"https://github.com/zingale.png","language":"Fortran","funding_links":[],"categories":[],"sub_categories":[],"readme":"advection\n\n  solve the linear advection equation using upwind and FTCS and\n  some 2nd order methods (L-W, L-F, ...) on a finite-volume grid.\n  This is the routine that was used to make the plots in the \n  advection lecture -- even though that lecture focused on finite-\n  difference methods.\n\n\nadvection-fd\n\n  solve the advection equation on a finite-difference mesh -- this\n  was done just to give the students an example program that does\n  ftcs on a finite-difference mesh.\n\n\nadvection-secondorder\n\n  solve the linear advection equation on a finite-volume mesh using\n  modern slope-limiting methods.\n\n\nburger-hmwk\n\n  solve Burger's equation in a conserved and non-conservative differencing\n  on a finite-difference mesh.  This is the solution to the homework.\n\n\nburgers\n\n  conservative and non-conservative first-order differencing of Burger's \n  equation on a finite-volume mesh.  This was the first attempt at coding\n  this up, before switching over to a finite-diffrence mesh for their\n  homework.\n\n\nburgers-secondorder\n\n  solve Burger's equation using 2nd order slope limiting methods.\n\n\nderivative\n\n  compute the error in different difference approximations to first\n  derivatives\n\n\nepsilon\n\n  compute machine epsilon\n\n\nexponental_roundoff\n\n   show how important a role roundoff error plays in computing the\n   exponentation of a large negative number.  This was used in the \n   numerics lecture.\n\n\ngeneral-fv\n\n   a general, clean implementation of second-order slope limiting\n   finite-volume methods for the advection equation.  \n\n\ngodunov\n\n   solve the Euler equations using Godunov's method and a 2-shock\n   Riemann solver.\n\n\ngodunov-c\n\n   solve the Euler equations using Godunov's method and a 2-shock\n   Riemann solver.  Here, the Riemann solver is written in C.\n\n\nlane_emden\n\n   integrate the Lane-Emden equations.  This is done as a homework\n   assignment.  These codes are used to demonstrate the convergence\n   rate of the different methods.\n\n\nlw-burger\n\n   solve Burger's equation using the Lax-Wendroff method on a finite\n   difference grid.\n\n\nmultigrid\n\n   a multigrid V-cycle example.\n\n\norbit\n\n   compute the orbit of the Earth around the Sun.  This shows that low\n   order methods do a poor job.  This code was used in the numerical\n   integration lecture.\n\n\nppm_plot\n\n   some first hacks at plotting what goes on in PPM -- never used.\n\n\nrelaxation\n\n   pure relaxation applied to an elliptic problem.  This was used in \n   the first of the multigrid lectures.\n\n\nriemann_exact\n\n   The exact Riemann solver from Toro.\n\n\nriemann_plot\n\n   Given a Riemann problem, plot the shock and rarefaction\n   curves passing through the left and right states.  This is a \n   graphical way of solving the Riemann problem.\n\n\nsolar_wind\n\n   some hacks at solving the equations describing the solar wind.\n\n\nsummation\n\n  an attempt at demonstrating roundoff error through summation.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzingale%2Fteaching_codes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzingale%2Fteaching_codes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzingale%2Fteaching_codes/lists"}