Home Examples Screenshots User manual Bluesky logo YouTube
OghmaNano Multiphysics simulation platform for optoelectronic devices and photonic systems DOWNLOAD Quick Start guide

V2O5 material model

1. Introduction

This page contains the OghmaNano material model for V2O5 (V2O5).

Vanadium pentoxide (alpha-V2O5), high-work-function hole-injection/extraction oxide

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 "V2O5", enabled
end


function material.description()
	local enabled = true

	return "Vanadium pentoxide (alpha-V2O5), high-work-function hole-injection/extraction oxide", enabled
end


function material.formula()
	local enabled = true

	return "V2O5", enabled
end


function material.Eg(state)
	-- Units: eV
	--
	-- Reference:
	-- J. Meyer et al., "Transition Metal Oxides for Organic
	-- Electronics", Adv. Mater. 24, 5408-5427, 2012.
	--
	-- Optical gap of alpha-V2O5 ~2.3 eV (reported ~2.2-2.3 eV).
	-- Constant value; T-dependence weak/uncharacterised for films.

	local enabled = true
	local value = 2.3

	return value, enabled
end


function material.Xi(state)
	-- Electron affinity
	-- Units: eV
	--
	-- Reference:
	-- J. Meyer et al., Adv. Mater. 24, 5408, 2012;
	-- M. T. Greiner et al., Nat. Mater. 11, 76-81, 2012.
	--
	-- V2O5 electron affinity ~4.7 eV, ionisation potential ~7.0 eV
	-- (consistent with Eg ~2.3 eV). Like MoO3, V2O5 has a deep-lying
	-- conduction band and a very high effective work function
	-- (~5.3 eV typical, up to ~7 eV for clean surfaces), which is what
	-- makes it a hole-extraction / anode-buffer oxide via charge
	-- transfer from the adjacent organic HOMO. The high work function
	-- is the key device parameter; it degrades on air exposure.

	local enabled = true
	local value = 4.7

	return value, enabled
end


function material.Nc(state)
	-- Effective conduction-band density of states
	-- Units: m^-3
	--
	-- Note: not well established; carriers are electrons in a
	-- defect/vacancy-derived band rather than a clean parabolic CB.
	-- Order-of-magnitude placeholder.

	local enabled = true
	local T = state.T
	local value = 1.0e25*(T/300.0)^1.5

	return value, enabled
end


function material.Nv(state)
	-- Effective valence-band density of states
	-- Units: m^-3
	--
	-- Note: order-of-magnitude placeholder; see Nc note.

	local enabled = true
	local T = state.T
	local value = 1.0e25*(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
	--
	-- Reference:
	-- V2O5 single-crystal transport anisotropy from the
	-- vanadium-oxide literature; device-film behaviour discussed in
	-- J. Meyer et al., Adv. Mater. 24, 5408, 2012.
	--
	-- Note: V2O5 is a layered orthorhombic crystal with strongly
	-- anisotropic transport (higher along the b-axis chains).
	-- Single-crystal electron mobility ~0.1-0.5 cm^2/V/s; evaporated /
	-- amorphous device films are much lower (~1e-4 to 1e-2 cm^2/V/s).
	-- A representative 1e-3 cm^2/V/s = 1e-7 m^2/V/s is used
	-- (approximate). Transport in the disordered film is trap/hopping
	-- limited, so no phonon (300/T)^n law is applied.

	local enabled = true
	local value = 1.0e-7

	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: as with MoO3, V2O5 extracts holes from the adjacent
	-- organic by electron transfer into its deep CB, not by hole
	-- conduction within V2O5, so intrinsic hole mobility is not the
	-- operative channel and is poorly constrained. Low placeholder.

	local enabled = true
	local value = 1.0e-9

	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:
	-- alpha-V2O5 optical constants / anisotropy from the
	-- vanadium-oxide optical (ellipsometry) literature.
	--
	-- Note: alpha-V2O5 is a layered orthorhombic crystal with
	-- anisotropic, not-well-constrained permittivity. High-frequency
	-- epsilon_inf ~4 (n ~2); the static value is somewhat larger and
	-- axis-dependent. A representative (approximate) value is used;
	-- verify if the field in this layer is important.

	local enabled = true
	local value = 4.0

	return value, enabled
end


function material.free_to_free_recombination(state)
	-- Radiative (band-to-band) recombination coefficient
	-- Units: m^3 s^-1
	--
	-- Note: thin charge-selective buffer, not an absorber; bulk
	-- radiative recombination is not the operative physics. 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
	--
	-- Material-quality dependent placeholder. V2O5 films carry a high
	-- O-vacancy gap-state density; set from measurement if it matters.

	local enabled = true
	local value = 1.0e21

	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:
	-- Low, anisotropic values from the V2O5 thermal-transport
	-- literature (CRC Handbook; layered-oxide studies).
	--
	-- Note: alpha-V2O5 is a layered crystal with low, anisotropic
	-- thermal conductivity (order 0.5-4 W/m/K); films are lower still.
	-- A low representative value is used. Approximate / poorly
	-- constrained.

	local enabled = true
	local value = 1.0

	return value, enabled
end


function material.heat_capacity(state)
	-- Specific heat capacity
	-- Units: J kg^-1 K^-1
	--
	-- Reference:
	-- From molar heat capacity ~127 J/mol/K and M = 181.88 g/mol,
	-- c_p ~ 700 J/kg/K (CRC Handbook of Chemistry and Physics;
	-- thermochemical data). Approximate.

	local enabled = true
	local value = 700.0

	return value, enabled
end


function material.density(state)
	-- Mass density
	-- Units: kg m^-3
	--
	-- Reference:
	-- alpha-V2O5 rho = 3.36 g/cm^3 (CRC Handbook of Chemistry and
	-- Physics).

	local enabled = true
	local value = 3360.0

	return value, enabled
end


function material.lattice_constant(state)
	-- Cubic lattice constant
	-- Units: m
	--
	-- DISABLED: alpha-V2O5 is orthorhombic and layered, NOT cubic, so
	-- a single cubic lattice constant is not meaningful.
	--
	-- Reference (crystallography):
	-- R. W. G. Wyckoff, "Crystal Structures".
	-- alpha-V2O5: a = 11.512 A, b = 3.564 A, c = 4.368 A.
	-- The b-axis (chain direction) value is returned for reference
	-- only.

	local enabled = false
	local value = 3.564e-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.
-- ============================================================================