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

Cs2AgBiBr6 material model

1. Introduction

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

Caesium silver bismuth bromide (Cs2AgBiBr6), lead-free cubic double perovskite (indirect-gap absorber)

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

Supporting definitions

-- See end of file for copyright, licensing and documentation links.

local material = {}

Material name (material.name)

function material.name()
	local enabled = true

	return "Cs2AgBiBr6", enabled
end

Material description (material.description)

function material.description()
	local enabled = true

	return "Caesium silver bismuth bromide (Cs2AgBiBr6), lead-free cubic double perovskite (indirect-gap absorber)", enabled
end

Chemical formula (material.formula)

function material.formula()
	local enabled = true

	return "Cs2AgBiBr6", enabled
end

Band gap energy (material.Eg)

function material.Eg(state)
	-- Units: eV
	--
	-- Reference:
	-- A. H. Slavney, T. Hu, A. M. Lindenberg, H. I. Karunadasa,
	-- "A Bismuth-Halide Double Perovskite with Long Carrier
	-- Recombination Lifetimes for Photovoltaic Applications",
	-- J. Am. Chem. Soc. 138, 2138-2141, 2016.
	--
	-- INDIRECT gap ~1.95-2.0 eV at 300 K (the lowest direct transition
	-- lies higher). A value of 2.0 eV is used.
	--
	-- Note: the indirect nature limits absorption near the edge and is
	-- one reason single-junction efficiencies are modest despite the
	-- long carrier lifetimes. Constant value; T-dependence not well
	-- characterised.

	local enabled = true
	local value = 2.0

	return value, enabled
end

Deformation potential Xi (material.Xi)

function material.Xi(state)
	-- Electron affinity
	-- Units: eV
	--
	-- Reference:
	-- Photoemission / band-alignment studies of Cs2AgBiBr6.
	--
	-- Conduction-band minimum ~ -3.9 eV vs vacuum (electron affinity
	-- ~3.9 eV); with Eg ~2.0 eV the valence band is near ~ -5.9 eV.
	-- Reported band positions scatter by several tenths of an eV.
	-- Approximate.

	local enabled = true
	local value = 3.9

	return value, enabled
end

Effective conduction-band density of states (material.Nc)

function material.Nc(state)
	-- Effective conduction-band density of states
	-- Units: m^-3
	--
	-- Note: heavier, more localised bands than the lead iodides
	-- (indirect, mixed Ag/Bi character). Order-of-magnitude
	-- placeholder from m* of order ~0.3-0.5 m0.

	local enabled = true
	local T = state.T
	local value = 5.0e24*(T/300.0)^1.5

	return value, enabled
end

Effective valence-band density of states (material.Nv)

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 = 5.0e24*(T/300.0)^1.5

	return value, enabled
end

Electron mobility (material.mu_e)

function material.mu_e(state)
	-- Low-field electron mobility
	-- Units: m^2 V^-1 s^-1
	--
	-- Reference:
	-- Transport studies of Cs2AgBiBr6 single crystals and films.
	--
	-- Mobility is modest (single-crystal ~0.5-12 cm^2/V/s; films
	-- lower). A representative 1 cm^2/V/s = 1e-4 m^2/V/s is used with a
	-- (300/T)^1.5 phonon form. Approximate.

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

	return value, enabled
end

Electron mobility in the x direction (material.mue_x)

function material.mue_x(state)
	return material.mu_e(state)
end

Electron mobility in the y direction (material.mue_y)

function material.mue_y(state)
	return material.mu_e(state)
end

Electron mobility in the z direction (material.mue_z)

function material.mue_z(state)
	return material.mu_e(state)
end

Hole mobility (material.mu_h)

function material.mu_h(state)
	-- Low-field hole mobility
	-- Units: m^2 V^-1 s^-1
	--
	-- Note: comparable to or below the electron value; not tightly
	-- constrained. 1 cm^2/V/s = 1e-4 m^2/V/s with (300/T)^1.5.
	-- Approximate.

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

	return value, enabled
end

Hole mobility in the x direction (material.muh_x)

function material.muh_x(state)
	return material.mu_h(state)
end

Hole mobility in the y direction (material.muh_y)

function material.muh_y(state)
	return material.mu_h(state)
end

Hole mobility in the z direction (material.muh_z)

function material.muh_z(state)
	return material.mu_h(state)
end

Relative dielectric permittivity (material.epsilonr)

function material.epsilonr(state)
	-- Relative static permittivity
	-- Dimensionless
	--
	-- Reference:
	-- Dielectric studies of Cs2AgBiBr6.
	--
	-- Frequency-dependent: high-frequency epsilon_inf ~4.5-5.5; the
	-- low-frequency (ionic) value is higher, ~30-60. A low-frequency
	-- value ~30 is used for drift-diffusion. Approximate.

	local enabled = true
	local value = 30.0

	return value, enabled
end

Free-carrier radiative recombination (material.free_to_free_recombination)

function material.free_to_free_recombination(state)
	-- Radiative (band-to-band) recombination coefficient
	-- Units: m^3 s^-1
	--
	-- Note: Cs2AgBiBr6 is an INDIRECT-gap semiconductor, so intrinsic
	-- band-to-band radiative recombination is weak (this is linked to
	-- its long carrier lifetimes). Weak, poorly constrained
	-- placeholder ~1e-18 m^3/s (well below the direct-gap lead
	-- halides). Approximate.

	local enabled = true
	local value = 1.0e-18

	return value, enabled
end

Electron Auger recombination coefficient (material.auger_Cn)

function material.auger_Cn(state)
	-- Electron Auger recombination coefficient
	-- Units: m^6 s^-1
	--
	-- Note: not well characterised. Order-of-magnitude placeholder.

	local enabled = true
	local value = 1.0e-42

	return value, enabled
end

Hole Auger recombination coefficient (material.auger_Cp)

function material.auger_Cp(state)
	-- Hole Auger recombination coefficient
	-- Units: m^6 s^-1
	--
	-- Note: order-of-magnitude placeholder; see Cn note.

	local enabled = true
	local value = 1.0e-42

	return value, enabled
end

Interface trap energy (material.ss_srh_trap_energy)

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

Interface trap density (material.ss_srh_Nt)

function material.ss_srh_Nt(state)
	-- SRH trap density
	-- Units: m^-3
	--
	-- Note: often the dominant recombination channel in this indirect
	-- absorber. Quality-dependent placeholder; set from measured
	-- lifetime.

	local enabled = true
	local value = 1.0e21

	return value, enabled
end

Interface electron capture cross-section (material.ss_srh_sigma_n)

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

Interface hole capture cross-section (material.ss_srh_sigma_p)

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

Lattice thermal conductivity (material.thermal_kl)

function material.thermal_kl(state)
	-- Thermal conductivity
	-- Units: W m^-1 K^-1
	--
	-- Note: ultralow, like other halide perovskites, ~0.3-0.5 W/m/K
	-- (strong anharmonicity). A value of 0.4 W/m/K is used.
	-- Approximate.

	local enabled = true
	local value = 0.4

	return value, enabled
end

Specific heat capacity (material.heat_capacity)

function material.heat_capacity(state)
	-- Specific heat capacity
	-- Units: J kg^-1 K^-1
	--
	-- Note: ~300 J/kg/K used as a representative placeholder (limited
	-- calorimetric data). Approximate.

	local enabled = true
	local value = 300.0

	return value, enabled
end

Mass density (material.density)

function material.density(state)
	-- Mass density
	-- Units: kg m^-3
	--
	-- Reference:
	-- A. H. Slavney et al., J. Am. Chem. Soc. 138, 2138, 2016
	-- (structure). Cs2AgBiBr6 rho ~ 4.6 g/cm^3.

	local enabled = true
	local value = 4600.0

	return value, enabled
end

Crystal lattice constant (material.lattice_constant)

function material.lattice_constant(state)
	-- Cubic lattice constant
	-- Units: m
	--
	-- Reference:
	-- A. H. Slavney et al., J. Am. Chem. Soc. 138, 2138, 2016.
	--
	-- Cs2AgBiBr6 IS cubic (double-perovskite / elpasolite, Fm-3m) at
	-- room temperature, so this is a genuine cubic lattice constant:
	-- a = 11.25 A at 300 K. The large cell reflects the rock-salt
	-- ordering of Ag and Bi on the B-sites (doubled perovskite cell).

	local enabled = true
	local value = 11.25e-10

	return value, enabled
end

Electron thermal relaxation time (material.thermal_tau_e)

function material.thermal_tau_e(state)
	-- Electron energy relaxation time towards the lattice temperature
	-- Units: s
	--
	-- Value basis: Perovskite family estimate
	-- Confidence: Low
	--
	-- Reference:
	-- https://www.nature.com/articles/s41467-017-01360-3
	--
	-- Comments:
	-- No robust carrier-specific hydrodynamic value found for Cs2AgBiBr6; use 1
	-- ps and perform sensitivity analysis.

	local enabled = true
	local value = 1.000000e-12

	return value, enabled
end

Hole thermal relaxation time (material.thermal_tau_h)

function material.thermal_tau_h(state)
	-- Hole energy relaxation time towards the lattice temperature
	-- Units: s
	--
	-- Value basis: Perovskite family estimate
	-- Confidence: Low
	--
	-- Reference:
	-- https://www.nature.com/articles/s41467-017-01360-3
	--
	-- Comments:
	-- No robust carrier-specific hydrodynamic value found for Cs2AgBiBr6; use 1
	-- ps and perform sensitivity analysis.

	local enabled = true
	local value = 1.000000e-12

	return value, enabled
end

Longitudinal optical phonon energy (material.phonon_lo_energy)

function material.phonon_lo_energy(state)
	-- Effective longitudinal optical phonon energy
	-- Units: eV
	--
	-- Hellwarth effective phonon frequency = 3.703 THz.
	-- h*f = 15.32 meV.
	--
	-- Reference:
	-- J. A. Steele et al.,
	-- "Giant Electron-Phonon Coupling and Deep Conduction Band
	-- Resonance in Metal Halide Double Perovskite,"
	-- ACS Nano 12, 8081-8090 (2018).
	-- DOI: 10.1021/acsnano.8b02936

	local enabled = true
	local value = 0.01532

	return value, enabled
end

Static dielectric constant (material.epsilon_static)

function material.epsilon_static(state)
	-- Static dielectric constant used for polar optical phonon scattering
	-- Dimensionless
	--
	-- DFPT static dielectric constant: 16.73.
	--
	-- Reference:
	-- J. A. Steele et al.,
	-- "Giant Electron-Phonon Coupling and Deep Conduction Band
	-- Resonance in Metal Halide Double Perovskite,"
	-- ACS Nano 12, 8081-8090 (2018).
	-- DOI: 10.1021/acsnano.8b02936

	local enabled = true
	local value = 16.73

	return value, enabled
end

High-frequency dielectric constant (material.epsilon_inf)

function material.epsilon_inf(state)
	-- High-frequency dielectric constant used for polar optical phonon scattering
	-- Dimensionless
	--
	-- DFPT optical dielectric constant: 5.42.
	--
	-- Reference:
	-- J. A. Steele et al.,
	-- "Giant Electron-Phonon Coupling and Deep Conduction Band
	-- Resonance in Metal Halide Double Perovskite,"
	-- ACS Nano 12, 8081-8090 (2018).
	-- DOI: 10.1021/acsnano.8b02936

	local enabled = true
	local value = 5.42

	return value, enabled
end

Elastic stiffness constant C11 (material.C11)

function material.C11(state)
    -- Elastic stiffness constant C11
    -- Units: Pa
    --
    -- No sufficiently reliable value/reference identified.
    -- Disabled rather than estimated.
    --
    -- Notes:
    -- No experimental single-crystal elastic constants for cubic Cs2AgBiBr6
    -- were verified; available values are first-principles with large spread.

    local enabled = false
    local value = 0.0

    return value, enabled
end

Elastic stiffness constant C12 (material.C12)

function material.C12(state)
    -- Elastic stiffness constant C12
    -- Units: Pa
    --
    -- No sufficiently reliable value/reference identified.
    -- Disabled rather than estimated.
    --
    -- Notes:
    -- No experimental single-crystal elastic constants for cubic Cs2AgBiBr6
    -- were verified; available values are first-principles with large spread.

    local enabled = false
    local value = 0.0

    return value, enabled
end

Elastic stiffness constant C44 (material.C44)

function material.C44(state)
    -- Elastic stiffness constant C44
    -- Units: Pa
    --
    -- No sufficiently reliable value/reference identified.
    -- Disabled rather than estimated.
    --
    -- Notes:
    -- No experimental single-crystal elastic constants for cubic Cs2AgBiBr6
    -- were verified; available values are first-principles with large spread.

    local enabled = false
    local value = 0.0

    return value, enabled
end

Electron acoustic deformation potential (material.D_ac_e)

function material.D_ac_e(state)
    -- Effective scalar acoustic deformation potential for electrons
    -- Units: eV
    --
    -- No sufficiently reliable value/reference identified.
    -- Disabled rather than estimated.
    --
    -- Notes:
    -- Targeted search (coherent-acoustic-phonon / picosecond-ultrasonics
    -- experiments, temperature-dependent mobility fits, first-principles
    -- deformation-potential and electron-phonon studies, band-edge strain
    -- studies) found no defensible, separately-resolved scalar acoustic
    -- deformation potential for electrons and holes in this compound.
    -- Mobility-fit analyses of halide perovskites (e.g. the review by
    -- L. M. Herz, ACS Energy Lett. 2, 1539 (2017), DOI 10.1021/
    -- acsenergylett.7b00276) conclude that acoustic deformation-potential
    -- scattering is weak compared with Frohlich scattering but give no
    -- compound-specific D_ac. Band-gap deformation potentials (dEg/dlnV) and
    -- optical/Frohlich coupling constants are not substitutes. The only
    -- experimental separation of electron and hole values found is for
    -- MAPbI3 (Mante et al., Nat. Commun. 8, 14398 (2017)); transferring it to
    -- other halides or cations is not justified.
    -- Cs2AgBiBr6: the deformation potentials discussed for this double
    -- perovskite relate to exciton self-trapping (e.g. Wu et al., Sci. Adv.
    -- 7, 2021) and are not the free-carrier equipartition D_ac.

    local enabled = false
    local value = 0.0

    return value, enabled
end

Hole acoustic deformation potential (material.D_ac_h)

function material.D_ac_h(state)
    -- Effective scalar acoustic deformation potential for holes
    -- Units: eV
    --
    -- No sufficiently reliable value/reference identified.
    -- Disabled rather than estimated.
    --
    -- Notes:
    -- Targeted search (coherent-acoustic-phonon / picosecond-ultrasonics
    -- experiments, temperature-dependent mobility fits, first-principles
    -- deformation-potential and electron-phonon studies, band-edge strain
    -- studies) found no defensible, separately-resolved scalar acoustic
    -- deformation potential for electrons and holes in this compound.
    -- Mobility-fit analyses of halide perovskites (e.g. the review by
    -- L. M. Herz, ACS Energy Lett. 2, 1539 (2017), DOI 10.1021/
    -- acsenergylett.7b00276) conclude that acoustic deformation-potential
    -- scattering is weak compared with Frohlich scattering but give no
    -- compound-specific D_ac. Band-gap deformation potentials (dEg/dlnV) and
    -- optical/Frohlich coupling constants are not substitutes. The only
    -- experimental separation of electron and hole values found is for
    -- MAPbI3 (Mante et al., Nat. Commun. 8, 14398 (2017)); transferring it to
    -- other halides or cations is not justified.

    local enabled = false
    local value = 0.0

    return value, enabled
end

Material parameter summary (material.print)

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("Electron energy relax.:  %.6e s", material.thermal_tau_e(state)))
	print(string.format("Hole energy relax.:      %.6e s", material.thermal_tau_h(state)))

	print(string.format("Thermal conductivity:   %.6e W/m/K", material.thermal_kl(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.
-- ============================================================================