calcfunpca function update