# gas_mixture

## Procs | |

archive | Update archived versions of variables. Returns: TRUE in all cases |
---|---|

boolean_remove | Only removes the gas if we have more than the amount |

copy_from_turf | Copies all gas info from the turf into the gas list along with temperature Returns: TRUE if we are mutable, FALSE otherwise |

get_breath_partial_pressure | Takes the amount of the gas you want to PP as an argument So I don't have to do some hacky switches/defines/magic strings eg: Tox_PP = get_partial_pressure(gas_mixture.toxins) O2_PP = get_partial_pressure(gas_mixture.oxygen) |

get_true_breath_pressure | inverse |

heat_capacity | joules per kelvin |

merge | Merges all air from giver into self. Deletes giver. Returns: TRUE if we are mutable, FALSE otherwise |

mimic | Don't make calculations if there is no difference. |

react | Performs various reactions such as combustion or fusion (LOL) Returns: TRUE if any reaction took place; FALSE otherwise |

remove | Proportionally removes amount of gas from the gas_mixture. Returns: gas_mixture with the gases removed |

remove_ratio | Proportionally removes amount of gas from the gas_mixture. Returns: gas_mixture with the gases removed |

return_pressure | Calculate pressure in kilopascals |

return_temperature | Calculate temperature in kelvins |

return_volume | Calculate volume in liters |

share | Performs air sharing calculations between two gas_mixtures assuming only 1 boundary length Returns: amount of gas exchanged (+ if sharer received) |

temperature_share | Performs temperature sharing calculations (via conduction) between two gas_mixtures assuming only 1 boundary length Returns: new temperature of the sharer |

thermal_energy | Calculate thermal energy in joules |

total_moles | Calculate moles |

## Proc Details

### archive

Update archived versions of variables. Returns: TRUE in all cases

### boolean_remove

Only removes the gas if we have more than the amount

### copy_from_turf

Copies all gas info from the turf into the gas list along with temperature Returns: TRUE if we are mutable, FALSE otherwise

### get_breath_partial_pressure

Takes the amount of the gas you want to PP as an argument So I don't have to do some hacky switches/defines/magic strings eg: Tox_PP = get_partial_pressure(gas_mixture.toxins) O2_PP = get_partial_pressure(gas_mixture.oxygen)

### get_true_breath_pressure

inverse

### heat_capacity

joules per kelvin

### merge

Merges all air from giver into self. Deletes giver. Returns: TRUE if we are mutable, FALSE otherwise

### mimic

Don't make calculations if there is no difference.

### react

Performs various reactions such as combustion or fusion (LOL) Returns: TRUE if any reaction took place; FALSE otherwise

### remove

Proportionally removes amount of gas from the gas_mixture. Returns: gas_mixture with the gases removed

### remove_ratio

### return_pressure

Calculate pressure in kilopascals

### return_temperature

Calculate temperature in kelvins

### return_volume

Calculate volume in liters

### share

Performs air sharing calculations between two gas_mixtures assuming only 1 boundary length Returns: amount of gas exchanged (+ if sharer received)

### temperature_share

Performs temperature sharing calculations (via conduction) between two gas_mixtures assuming only 1 boundary length Returns: new temperature of the sharer

### thermal_energy

Calculate thermal energy in joules

### total_moles

Calculate moles