Skip to content

opprah-maker/opprah-maker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 

Repository files navigation

Hi, I'm Opprah Manyika

Aerospace Engineering : CFD, FSI, Aerodynamics, Numerical Methods, and Energy Systems

Aerospace engineer specialising in computational fluid dynamics, fluid-structure interaction, conceptual aircraft design, and energy systems modelling for the Net-Zero transition. Tools: MATLAB, GNU Octave, ANSYS Fluent and Mechanical, SolidWorks, LaTeX.

Portfolio LinkedIn Email Followers


Tech Stack

MATLAB GNU Octave ANSYS Fluent ANSYS Mechanical SolidWorks LaTeX Python Git GitHub MATLAB Online

GitHub Stats

Streak

Followers Following Public Repos Total Stars Gists
Profile Views Stars

At a Glance

Degree BEng / MEng Aerospace Engineering (in progress)
Core strengths CFD (ANSYS Fluent), FSI (ANSYS Mechanical), aerodynamics, numerical methods, energy systems modelling, conceptual aircraft design
Languages MATLAB, GNU Octave, Python, FORTRAN (basic), LaTeX
CAE tools ANSYS Fluent, ANSYS Mechanical, ANSYS DesignModeler, SpaceClaim
CAD tools SolidWorks
Portfolio opprah-maker.github.io
Focus area Energy and decarbonisation, with strong CFD and design fundamentals

What I Do

A short, plain-English summary of the engineering work in this portfolio, written so that a non-engineer can follow it. Each item leads with what the topic is, then explains what was actually done with it.

  • Computational Fluid Dynamics (CFD) : using software to simulate how air or other fluids flow around an object, in place of (or before) building and testing a physical model. The work in this portfolio covers a computer cooling fan and the inlet of a gas turbine, with two turbulence models (k-omega SST and k-epsilon Realisable), pressure-based steady-state solvers, and mesh-quality checks (skewness, orthogonality, near-wall resolution). The output is a picture of how the pressure, velocity, and turbulence vary across the geometry.
  • Fluid-Structure Interaction (FSI) : feeding the pressure field from a CFD run back into a structural analysis, so that the deformation caused by the flow can be seen and the stresses inside the structure can be checked. The CFD fan study in this portfolio includes a one-way FSI coupling into ANSYS Mechanical, with a von Mises stress check and a safety-factor calculation on the blade.
  • Aerodynamics : measuring the lift and drag of an aerofoil in a wind tunnel, and reducing the raw voltages from the balance and pressure scanner into the standard non-dimensional coefficients (CL, CD) and a drag polar. The NACA 0012 study in this portfolio covers angles of attack from -2 deg to 16 deg, with the data corrected for tunnel blockage and the uncertainty quantified with the Kline-McClintock method.
  • Aircraft Conceptual Sizing : the early-stage sizing of a new aircraft on the back of an envelope, using a small number of dominant constraints (wing loading, thrust-to-weight, stability, performance) to converge on a configuration before any detailed design is done. The heavy-lift transport study in this portfolio covers a 25,000 kg payload and 8,000 km range aircraft, with sizing, weight estimation by the Torenbeek method, and a payload-range diagram.
  • Numerical Methods : solving partial differential equations (such as the heat equation) on a grid by stepping forward in time, with a stability analysis to ensure the chosen time step is small enough that the solution does not diverge. The heat-conduction study in this portfolio uses the explicit forward-time central-space (FTCS) scheme, with a von Neumann stability check and a mesh-refinement study.
  • Energy Systems Modelling : building a simplified model of the electricity grid in code and running it under different policy scenarios to see what happens to the generation mix, the wholesale price, and the CO2 emissions. The dissertation in this portfolio covers three UK decarbonisation scenarios from 2020 to 2050, with a sensitivity analysis on the carbon price, the gas price, and the renewables capital cost.

Table of Contents

  1. Featured: Individual Project Dissertation
  2. CFD and FSI : Axial-Flow Fan
  3. Aircraft Aerodynamics and Design
  4. CFD : Bellmouth Inlet for Gas Turbine
  5. Numerical Methods : Heat Conduction FDM
  6. 3D Gaussian Splat Visualisations
  7. Core Competencies
  8. Portfolio Site

Featured: Individual Project Dissertation

Open in MATLAB Online

The full individual project dissertation evaluating UK electricity market reform pathways to Net-Zero. Three policy scenarios (Baseline, Renewable Incentivisation, Demand-Side Response) compared using HRES scenario modelling in MATLAB.

Metric Baseline Renewable Incentivisation Demand-Side Response
Renewable Integration 15% 65% 80%
Carbon Emissions (Mton/yr) 120 45 20
Grid Resilience (1-100) 40 55 90
Consumer Cost Index (1-100) 85 50 30

Key finding : DSR delivers an 83.3% carbon reduction and 125% grid resilience gain while reducing consumer costs.

Carbon emission reduction trajectory

| uk-energy dissertation | net-zero grid-resilience | demand-side-response policy-modelling |


CFD and FSI : Axial-Flow Fan

Comprehensive CFD and FSI analysis of a 60mm computer cooling axial-flow fan with 6 NACA 0012 blades. ANSYS Fluent with k-omega SST turbulence, 3D fan simulation, and coupled FSI validation. Optimal blade installation angle 30 deg , delivering 6.34 x 10⁻³m³/s flow rate and 10.8 Pa pressure rise. FSI maximum von Mises stress 15.2 MPa (safety factor 2.6).

Velocity streamlines from ANSYS Fluent

| cfd ansys-fluent fsi | axial-fan naca-0012 | k-omega-sst fluid-dynamics |


Aircraft Aerodynamics and Design

Open in MATLAB Online

Combined project : experimental aerodynamics of the NACA 0012 aerofoil plus the conceptual sizing of a heavy-lift transport aircraft. Wind-tunnel data (CL, CD at -2 deg to 35 deg ), lift and drag polars, (L/D)_max ~= 5.12 at alpha = 4 deg , stall onset at alpha ~= 16 deg , plus the aircraft sizing loop (W/S = 10,980N/m^2, T/W = 0.30, Cn_beta > 0.004).

NACA 0012 lift curve

| aerodynamics aircraft-design | aircraft-sizing directional-stability | matlab naca-0012 wind-tunnel-testing |

Note : the original NACA-0012-Aerodynamics-Wind-Tunnel and Heavy-Lift-Aircraft-Design repos have been merged into this single project.


CFD : Bellmouth Inlet for Gas Turbine

CFD optimisation of an elliptical bellmouth inlet for a gas turbine engine. Mass flow rate \dotm = 1.0kg/s, total-pressure recovery \etap > 0.99. Validated using the von Karman integral boundary layer method for adverse pressure gradient flows. Five Fluent contour plots (static, dynamic, total pressure, velocity, wall shear).

Bellmouth inlet pressure contour

| cfd ansys-fluent | bellmouth-inlet gas-turbine | aerospace-engineering boundary-layer |


Numerical Methods : Heat Conduction FDM

Open in MATLAB Online

Transient 2D heat conduction on a square plate solved with the explicit FTCS Finite Difference Method in MATLAB. Validated against the von Neumann stability criterion Delta t <= h^2/(4alpha). Discretisation :

\fracTi,jn⁺¹ - Ti,jnDelta t = alpha [\fracTi₊₁,jn - 2Ti,jn + Ti₋₁,jnh^2 + \fracTi,j₊₁n - 2Ti,jn + Ti,j₋₁nh^2]

Steady-state temperature contour

| finite-difference-method numerical-methods | heat-conduction ftcs-scheme | matlab pde-solver von-neumann-stability |


3D Gaussian Splat Visualisations

Nine of the 2D engineering figures across the CFD, Bellmouth, and Aircraft projects were also reconstructed as interactive 3D Gaussian splat previews. Inference runs locally with TripoSR (stabilityai/TripoSR, CPU mode, no CUDA toolkit needed) and a custom mesh-to-splat converter using scikit-image marching cubes. Each splat has about 100 000 surface samples.

Open the full 3D splat gallery at opprah-maker.github.io/#3d

Splat Source figure Source project
Fan rotor assembly figure 2 CFD-Axial-Flow-Fan-Analysis
Fan blade wireframe figure 1 CFD-Axial-Flow-Fan-Analysis
Bellmouth inlet mesh figure 3 Bellmouth-Inlet-CFD-Gas-Turbine
Bellmouth pressure field figure 8 Bellmouth-Inlet-CFD-Gas-Turbine
Bellmouth mesh refinement figure 2 Bellmouth-Inlet-CFD-Gas-Turbine
Bellmouth wall shear figure 6 Bellmouth-Inlet-CFD-Gas-Turbine
Heavy-lift aircraft 3-view figures 21, 24, 26 Aircraft-Aerodynamics-Design

| gaussian-splatting 3d-reconstruction | triposr image-to-3d | marching-cubes cpu-inference |


Core Competencies

Engineering Simulation and CFD

Domain Tools Methods
Computational Fluid Dynamics ANSYS Fluent / Mechanical k-omega SST turbulence, pressure-based steady solver, mesh sensitivity, skewness and orthogonal quality
Fluid-Structure Interaction ANSYS Mechanical and Fluent FSI coupling, modal analysis, stress and strain field extraction
Aerodynamics MATLAB and wind tunnel Lift and drag polars, boundary layer separation, stall onset
Numerical Methods MATLAB and GNU Octave FDM (FTCS, explicit), von Neumann stability, convergence analysis
CAD and Design SolidWorks, ANSYS DesignModeler, SpaceClaim Aerodynamic surfacing, mechanical layout, geometry clean-up

Aerospace Systems and Policy

Domain Methods
Aircraft Conceptual Design Wing loading, thrust-to-weight, stability derivatives, vertical tail volume
Energy Systems Modelling HRES scenario analysis, carbon reduction trajectories, DSR battery buffering
Regulatory and Policy Modelling UK electricity market reform, Net-Zero pathway analysis, grid resilience metrics

Portfolio Site

The full interactive portfolio with figure galleries, 3D Gaussian splat viewer, MathJax-rendered equations, and project modals is at opprah-maker.github.io.

Section Content
Home Engineering tagline and primary CTAs
Domains Six core engineering domains with iconography
Projects Five pinned project cards, each with a figure gallery modal
3D Nine interactive Gaussian splat previews with orbit / zoom / pan
Methodology Governing equations, discretisation, stability, validation
Competencies Eight-card competency grid
Contact Direct email, LinkedIn, GitHub, MATLAB Online

University engineering portfolio · Aerospace Engineering · MATLAB / Octave / ANSYS Fluent / SolidWorks

How I built this portfolio

This section describes the thought process behind the portfolio, the engineering tools that were used to build it, and the distinction between the work that was taught and the work that was self-taught. It is included in the profile so that the same story is available in one place, rather than being repeated in each of the project repositories.

Thought process

The motivation for putting the portfolio together was twofold. First, the engineering work was scattered across a number of local folders and an ageing laptop, and consolidating it into a single version-controlled repository was a way of making sure that the work would survive a hard-drive failure. Second, the work was, in the main, uni work, and the work that was being done in the home laboratory (Python, Git, GitHub, HTML/CSS, 3D) was not visible to anyone; making it visible on the web was a way of demonstrating that the engineering skills were not the only skills that were being developed.

The decision to publish the portfolio on GitHub was a practical one: GitHub Pages is free, the workflow is well understood, and the Markdown rendering is good enough for technical reports. The decision to use the HTML5 UP Miniport template for the portfolio site was a presentational one: the template is clean, the layout is responsive, and the figure-gallery modals work well for a portfolio of engineering figures.

The choice of project repositories (one per assignment, rather than a single monolithic repository) was deliberate: each project has its own README, its own figures, and its own data, and a single repository would have made the navigation unwieldy. The choice of the figure format (a list of figures with a thumbnail, a caption, and a link to the full-size image) was a usability decision: the figures are the most important output of the work, and a list of figures is the most natural way to browse them.

Learning outcomes

On completion of the portfolio the following capabilities were demonstrated:

  • Version control with Git and GitHub. Use of branches, pull requests, issues, and GitHub Actions for continuous deployment of the portfolio site.
  • Web development with HTML, CSS, and vanilla JavaScript. Use of a third-party template (HTML5 UP Miniport), modification of the template to suit the project, and use of vanilla JavaScript for the figure-gallery modals.
  • Data conversion and visualisation. Conversion of Excel workbooks to CSV with a Python script, plotting of the CSV data with Matplotlib, and publication of the plots as static images and as an interactive HTML page.
  • Three-dimensional Gaussian splatting. Reconstruction of three-dimensional models from two-dimensional figure crops using TripoSR, conversion of the reconstructed meshes to the antimatter15 splat format, and hosting of the splat files on GitHub Pages.
  • Technical writing in Markdown. Structuring of a multi-section engineering report in GitHub-flavoured Markdown, use of figures and tables to support the narrative, and consistent use of British English throughout.

Engineering tools: what was taught, what was self-taught

The portfolio is the boundary between the taught chapter of the engineering education and the self-taught chapter of the home laboratory. The two chapters are summarised below.

The taught chapter (BEng Aeronautical and Mechanical Engineering, Wrexham University, 2016 to 2020): the portfolio is a write-up of work I did during the BEng, and it draws on a small number of specific modules. The mapping is roughly as follows.

  • ENG 687 (Aerodynamics). This is where the naca0012_analysis.m script and the lift / drag / polar plots in the Aircraft repo come from. The data-reduction method (raw balance voltages to CL and CD) and the pressure-coefficient calculations around the aerofoil surface are from this module. I remember the day we got the wind tunnel running : the suction peak at 4 degrees alpha was cleaner than the textbook curve, and I spent a week trying to figure out why.
  • ENG 60K (Aircraft Stability, Control, and Design). The constraint-analysis method (matching the AOP at the design point, then sweeping the empty-weight fraction to get a feasible region, then sizing the control surfaces) is from this module. The aircraft_sizing.m script in the Aircraft repo is a direct product of that assignment. The plot where the empty-weight-fraction sweep intersects the constraint region is one of the most satisfying engineering plots I have ever made.
  • The CFD module (Mechanical Engineering Modelling and Simulation, module leader Jhon Paul Roque MRAeS). The ANSYS Workbench workflow (SpaceClaim geometry to Fluent meshing to Fluent solution to CFD-Post visualisation to ANSYS Mechanical for FEA) and the two-way System Coupling between Fluent and Mechanical. The residual-plot conventions (continuity, momentum, k, epsilon dipping under the 1e-6 threshold) and the mesh-independence procedure are also from this module. The CFD repo is a write-up of that assignment. I owe a lot to this module : it is where I learned that CFD is 80 percent setup and 20 percent interpretation, and that the mesh is everything.
  • ENG6AG (final-year dissertation). The UK energy-market project, the citation style, the scenario-comparison table, and the viva defence all come from this module. The report in the UK-Energy repo is the dissertation write-up. The dissertation was the first time I had to defend my methodology in front of an academic panel, and I learned more from the viva than from the writing.
  • The Bellmouth project. This one is interesting. The cover page of the source DOCX says 'University of South Wales', which is because I did this project before I started the BEng at Wrexham. It was an individual project at USW, and when I moved to Wrexham I carried the work with me because it was the most complete CFD study I had done at that point. So the Bellmouth repo is a bridge between my pre-Wrexham work and my Wrexham work, and I have kept it in the portfolio as such.
  • The heat-conduction FDM project. The explicit forward-time central-space finite-difference scheme on an 11 by 11 grid, the von Neumann stability check, the boundary-condition application, and the analytical Fourier-series comparison all come from the numerical-methods portion of the BEng. I remember the satisfaction of seeing the centre temperature decay curve match the analytical Fourier series almost exactly : that is when I really understood what numerical convergence means.

In addition, the underlying engineering science (theoretical aerodynamics, gas-turbine theory, heat transfer, ODEs and PDEs, numerical methods) was covered across the BEng, and the MATLAB scripts and the analytical-versus-numerical comparisons in the portfolio draw on that background.

Self-taught after graduation, in the home laboratory:

  • Python (NumPy, SciPy, Matplotlib, Pandas, openpyxl) for data analysis, plotting, and small utilities.
  • Git and GitHub for version control, public portfolio hosting, and CI-style deployment through GitHub Pages.
  • HTML, CSS, and vanilla JavaScript for the portfolio website.
  • Three-dimensional Gaussian splatting using TripoSR and the antimatter15 splat viewer.
  • Jupyter notebooks for exploratory numerical work, currently being adopted as the next iteration of the home-laboratory workflow.

The line between the two chapters is not always sharp: the MATLAB and ANSYS skills were taught, and the Python, Git, HTML/CSS, and 3D skills were self-taught. The portfolio is the visible boundary between the two chapters, and the next chapter (the home-laboratory workflow in Python and Jupyter) is the most interesting one. That is the chapter that is being written in the home laboratory, and the chapter that the next iteration of this portfolio will reflect.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors