Wet Curing Calculator

Created: 2025-04-08 00:22:04 | Last updated: 2025-04-08 00:22:04 | Status: Public

// Wet Curing Calculator

var appWetCuring = new Vue({
  el: '#app-wet-curing',
  data: {
    ppm: 150,
    meat_units: 'pounds',
    meat_amount: 1,
    brine_units: 'cups',
    brine_amount: 1,
    thickness_units: 'inches',
    thickness_amount: 1,
    shape_type: 'flat'
  },
  computed: {
    ppmLevel: function () {
       return this.ppm;
    },
    praguePowderGrams: function () {
        return this.totalVolume * 1000 * this.ppm / 1000000 / 0.0625;
    },
    showPowderSpoons: function () {
        if (this.praguePowderGrams < 26.5 ) {
            return (this.praguePowderGrams / 5.5).toFixed(1) + "   TEAspoons";
        } else {
            return (this.praguePowderGrams / 16.5).toFixed(1) + "  TABLEspoons";
        }
    },
    cureTime: function () {
        //var tmp_cure_time = 1.35 * this.thicknessFactor * Math.pow( this.thickness_amount, 2);
        var tmp_cure_time = 1.25 * Math.pow(this.thicknessFactor * this.thickness_amount, 2);
        if (this.shape_type == "flat" ) {
            return (tmp_cure_time).toFixed(1);
        } else if (this.shape_type == "cylinder") {
            //return (tmp_cure_time / 1.75).toFixed(1);
            return (tmp_cure_time / 2).toFixed(1);
        }
    },
    thicknessFactor: function () {
        if (this.thickness_units == 'inches') {
            return 1
        } else if (this.thickness_units == 'centimeters') {
            return 1 / 2.54;
        }
    },
    weightFactor: function () {
        if (this.meat_units == 'pounds') {
            return 1/2.2;
        } else if (this.meat_units == 'kilograms') {
            return 1;
        }
    },
    volumeFactor: function () {
        switch(this.brine_units) {
            case  'cups':
                return 0.24;
            case 'quarts':
                return  0.95;
            case 'gallons':
                return  3.8;
            case 'liters':
                return 1;
        }
    },
    totalVolume: function () {
        return this.volumeFactor * this.brine_amount + this.weightFactor * this.meat_amount;
    },
    hasMeatWeightError: function () {
        return !(this.meat_amount >= 0);
    },
    hasBrineError: function () {
        return !(this.brine_amount >= 0);
    },
    hasThicknessError: function () {
        return !(this.thickness_amount >= 0);
    }

  }
});