def validate_dvmrel(validate, mat_type, mp_name):
    """
    Valdiates the DVMREL1/2

    .. note::  words that start with integers (e.g., 12I/T**3) doesn't
               support strings

    """
    if not validate:
        return
    msg = 'DVMRELx: mat_type=%r mp_name=%r is invalid' % (mat_type, mp_name)
    if mat_type in ['MAT1']:
        assert mp_name in ['E', 'G', 'NU', 'GE', 'RHO', 'A', 'TREF'], msg
    elif mat_type == 'MAT2':
        assert mp_name in ['G11', 'G12', 'G22', 'G33', 'GE', 'RHO', 'A1',
            'A2', 'A3', 'TREF'], msg
    elif mat_type == 'MAT3':
        assert mp_name in ['EX', 'ETH', 'EZ', 'NUTH', 'NUXTH', 'NUTHZ',
            'NUZX', 'RHO'], msg
    elif mat_type == 'MAT8':
        assert mp_name in ['E1', 'G1Z', 'NU12'], msg
    elif mat_type == 'MAT9':
        assert mp_name in ['G11', 'G22', 'G33', 'G44', 'G55', 'G66', 'RHO'
            ], msg
    elif mat_type == 'MAT10':
        assert mp_name in ['BULK', 'RHO'], msg
    elif mat_type == 'MAT11':
        assert mp_name in ['E1', 'E2', 'E3', 'G12', 'G13', 'G23', 'RHO'], msg
    else:
        raise NotImplementedError(msg)
