Pronunciation of the prefix "tri"
Unfortunately not. As your example words show, you can't apply historical criteria (e.g. 'is it a Greek root') or any obvious phonological decision process ('is it stressed,' 'is there a vowel after it').
The only rule I can think of of is: in chemistry, the pronunciation "tri-" = /traɪ/ is fixed.
I can offer an extension of this rule, which I believe always holds:
- In a word "triXYZ", if XYZ is itself a word in English, then you pronounce "tri" as /traɪ/.
As an AE speaker, I can't think of a counterexample, anyway.