TiOx material model
1. Introduction
This page contains the OghmaNano material model for TiOx (TiOx).
Titanium oxide (sub-stoichiometric TiO2-x / amorphous TiOx), electron-transport/hole-blocking layer
The model is written in Lua and provides simulation-ready material parameterisations for use within OghmaNano. For documentation, licensing, references, and information about the scope and accuracy of these models, see the material scripting documentation.
2. Lua material model
-- See end of file for copyright, licensing and documentation links.
local material = {}
function material.name()
local enabled = true
return "TiOx", enabled
end
function material.description()
local enabled = true
return "Titanium oxide (sub-stoichiometric TiO2-x / amorphous TiOx), electron-transport/hole-blocking layer", enabled
end
function material.formula()
local enabled = true
return "TiOx", enabled
end
function material.Eg(state)
-- Units: eV
--
-- Reference:
-- J. Robertson, "High dielectric constant oxides",
-- Eur. Phys. J. Appl. Phys. 28, 265-291, 2004.
--
-- TiO2 gap: anatase ~3.2 eV, rutile ~3.0 eV. Device TiOx is
-- typically anatase-like / amorphous with an optical gap ~3.2 eV.
--
-- Note: sub-stoichiometric TiOx carries a significant density of
-- O-vacancy gap states below the CB; the nominal gap here does not
-- capture those. Constant value; T-dependence weak/uncharacterised.
local enabled = true
local value = 3.2
return value, enabled
end
function material.Xi(state)
-- Electron affinity
-- Units: eV
--
-- Reference:
-- CB position from device-alignment literature
-- (J. Robertson, Eur. Phys. J. Appl. Phys. 28, 265, 2004).
--
-- TiO2/TiOx electron affinity ~4.0-4.2 eV (CB ~ -4.0 to -4.2 eV
-- vs vacuum). This shallow CB, combined with a deep valence band,
-- is what makes TiOx a good electron-transport / hole-blocking
-- layer. Primary device-relevant parameter.
local enabled = true
local value = 4.1
return value, enabled
end
function material.Nc(state)
-- Effective conduction-band density of states
-- Units: m^-3
--
-- Reference:
-- From anatase CB effective mass m_e* ~ 1 m0 (TiO2 band-structure
-- literature): Nc(300 K) ~ 2.5e19 cm^-3 = 2.5e25 m^-3. Approximate.
--
-- Note: amorphous TiOx transport is dominated by gap states rather
-- than a clean parabolic band.
local enabled = true
local T = state.T
local value = 2.5e25*(T/300.0)^1.5
return value, enabled
end
function material.Nv(state)
-- Effective valence-band density of states
-- Units: m^-3
--
-- Reference:
-- Heavy (O 2p) valence band, m_h* of order a few m0:
-- Nv(300 K) ~ 1e26 m^-3. Poorly constrained placeholder.
local enabled = true
local T = state.T
local value = 1.0e26*(T/300.0)^1.5
return value, enabled
end
function material.mu_e(state)
-- Low-field electron mobility
-- Units: m^2 V^-1 s^-1
--
-- Note: strongly morphology-dependent. Amorphous / sol-gel TiOx
-- device layers have very low electron mobility ~1e-4 cm^2/V/s
-- (= 1e-8 m^2/V/s), used here as the device-representative value.
-- Crystalline anatase is far higher (~1-20 cm^2/V/s). Transport is
-- trap-limited in the disordered film, so no phonon (300/T)^n law
-- is applied.
local enabled = true
local value = 1.0e-8
return value, enabled
end
function material.mue_x(state)
return material.mu_e(state)
end
function material.mue_y(state)
return material.mu_e(state)
end
function material.mue_z(state)
return material.mu_e(state)
end
function material.mu_h(state)
-- Low-field hole mobility
-- Units: m^2 V^-1 s^-1
--
-- Note: TiOx is deliberately a HOLE BLOCKER; hole transport is
-- intentionally negligible and poorly constrained. Low placeholder.
local enabled = true
local value = 1.0e-10
return value, enabled
end
function material.muh_x(state)
return material.mu_h(state)
end
function material.muh_y(state)
return material.mu_h(state)
end
function material.muh_z(state)
return material.mu_h(state)
end
function material.epsilonr(state)
-- Relative static permittivity
-- Dimensionless
--
-- Reference:
-- TiO2 dielectric constants, CRC Handbook of Chemistry and
-- Physics; J. Robertson, Eur. Phys. J. Appl. Phys. 28, 265, 2004.
--
-- Note: TiO2 permittivity is large and strongly polymorph- and
-- axis-dependent: anatase static ~30-45, rutile ~86 (perp c) to
-- ~170 (parallel c). Amorphous device TiOx is typically lower
-- (~20-40) and process-dependent. A representative (approximate)
-- anatase-like value is used; adjust to your film if the local
-- field matters.
local enabled = true
local value = 40.0
return value, enabled
end
function material.free_to_free_recombination(state)
-- Radiative (band-to-band) recombination coefficient
-- Units: m^3 s^-1
--
-- Note: TiOx is an indirect wide-gap oxide used as a transport
-- layer, not an absorber; bulk radiative recombination is weak and
-- not the operative loss. Poorly constrained placeholder.
local enabled = true
local value = 1.0e-19
return value, enabled
end
function material.auger_Cn(state)
-- Electron Auger recombination coefficient
-- Units: m^6 s^-1
--
-- Note: not characterised. Order-of-magnitude placeholder.
local enabled = true
local value = 1.0e-43
return value, enabled
end
function material.auger_Cp(state)
-- Hole Auger recombination coefficient
-- Units: m^6 s^-1
--
-- Note: not characterised. Order-of-magnitude placeholder.
local enabled = true
local value = 1.0e-43
return value, enabled
end
function material.ss_srh_trap_energy(state)
-- SRH trap energy relative to the middle of the band gap.
-- Units: eV
--
-- Positive values are above mid-gap (towards the conduction band).
-- Negative values are below mid-gap (towards the valence band).
local enabled = true
local value = 0.0
return value, enabled
end
function material.ss_srh_Nt(state)
-- SRH trap density
-- Units: m^-3
--
-- Note: for a defect-rich TiOx ETL this is often the DOMINANT and
-- most important parameter (interfacial / bulk recombination). It
-- is strongly quality/processing dependent; the value below is a
-- placeholder to be set from measured lifetime or J-V fitting.
local enabled = true
local value = 1.0e22
return value, enabled
end
function material.ss_srh_sigma_n(state)
-- Electron capture cross section
-- Units: m^2
local enabled = true
local value = 1.0e-19
return value, enabled
end
function material.ss_srh_sigma_p(state)
-- Hole capture cross section
-- Units: m^2
local enabled = true
local value = 1.0e-19
return value, enabled
end
function material.thermal_conductivity(state)
-- Thermal conductivity
-- Units: W m^-1 K^-1
--
-- Reference:
-- Bulk anatase TiO2 ~ 4-10 W/m/K (CRC Handbook of Chemistry and
-- Physics; TiO2 thermal-transport literature).
--
-- Note: thin amorphous TiOx films are lower (~1-3 W/m/K). A low
-- film-appropriate value is used. Approximate / poorly constrained.
local enabled = true
local value = 3.0
return value, enabled
end
function material.heat_capacity(state)
-- Specific heat capacity
-- Units: J kg^-1 K^-1
--
-- Reference:
-- TiO2 (anatase), c_p(300 K) ~ 700 J/kg/K (CRC Handbook of
-- Chemistry and Physics).
local enabled = true
local value = 700.0
return value, enabled
end
function material.density(state)
-- Mass density
-- Units: kg m^-3
--
-- Reference:
-- TiO2 anatase rho = 3.78 g/cm^3 (CRC Handbook of Chemistry and
-- Physics). Amorphous TiOx films are often less dense
-- (~3.2-3.9 g/cm^3).
local enabled = true
local value = 3780.0
return value, enabled
end
function material.lattice_constant(state)
-- Cubic lattice constant
-- Units: m
--
-- DISABLED: device TiOx is usually AMORPHOUS or nanocrystalline
-- anatase; anatase itself is tetragonal, NOT cubic. A single cubic
-- lattice constant is not meaningful.
--
-- Reference (crystallography):
-- R. W. G. Wyckoff, "Crystal Structures".
-- Anatase TiO2: a = 3.7845 A, c = 9.5143 A.
-- The a-axis value is returned for reference only.
local enabled = false
local value = 3.7845e-10
return value, enabled
end
function material.print()
local state = {
T = 300.0,
x = 0.0,
y = 0.0,
z = 0.0,
photon_density = 0.0,
}
print(string.format("Material: %s", material.name()))
print(string.format("Description: %s", material.description()))
print(string.format("Formula: %s", material.formula()))
print(string.format("Temperature: %.2f K", state.T))
print(string.format("Position: %.6e, %.6e, %.6e m", state.x, state.y, state.z))
print(string.format("Photon density: %.6e m^-3", state.photon_density))
print(string.format("Band gap: %.6f eV", material.Eg(state)))
print(string.format("Electron affinity: %.6f eV", material.Xi(state)))
print(string.format("Electron mobility: %.6e m^2/V/s", material.mu_e(state)))
print(string.format("Hole mobility: %.6e m^2/V/s", material.mu_h(state)))
print(string.format("Nc: %.6e m^-3", material.Nc(state)))
print(string.format("Nv: %.6e m^-3", material.Nv(state)))
print(string.format("Relative permittivity: %.6f", material.epsilonr(state)))
print(string.format("Radiative coeff.: %.6e m^3/s", material.free_to_free_recombination(state)))
print(string.format("Electron Auger coeff.: %.6e m^6/s", material.auger_Cn(state)))
print(string.format("Hole Auger coeff.: %.6e m^6/s", material.auger_Cp(state)))
print(string.format("SRH trap energy: %.6f eV", material.ss_srh_trap_energy(state)))
print(string.format("SRH trap density: %.6e m^-3", material.ss_srh_Nt(state)))
print(string.format("SRH sigma n: %.6e m^2", material.ss_srh_sigma_n(state)))
print(string.format("SRH sigma p: %.6e m^2", material.ss_srh_sigma_p(state)))
print(string.format("Thermal conductivity: %.6e W/m/K", material.thermal_conductivity(state)))
print(string.format("Heat capacity: %.6e J/kg/K", material.heat_capacity(state)))
print(string.format("Mass density: %.6e kg/m^3", material.density(state)))
end
return material
-- ============================================================================
-- Copyright (C) 2026 The OghmaNano Project
-- All rights reserved.
--
-- This file is part of the OghmaNano Materials Model Library.
--
-- Website:
-- https://www.oghma-nano.com
--
-- Documentation and accuracy statement:
-- https://www.oghma-nano.com/manual/material-scripts.html
--
-- These material models are provided to support scientific research and
-- semiconductor device simulation. If you find them useful, please cite
-- OghmaNano where appropriate. Please do not redistribute these files or
-- incorporate them into other software or databases without permission.
-- ============================================================================