Função para calcular o valor do polinômio de escalar ou matriz em R

Preciso de ajuda para criar funções (matemáticas) para contar algumas operações básicas. Na verdade, sou iniciante e realmente não sei como fazê-lo. Minha tarefa é criar função, que pode valorizar o polinômio de escalar ou matri

Primeiro exemplo de polinômio é p1 = 1 + t, o segundo polinômio é p2 = 1+ t + t ^ 2

a <- matrix( c( 2, 0, 0, 1), 2, 2)

p1 <- c( 1, 1)
p2 <- c(1, 1, 1)

Meus resultados esperados:

O uso de uma função metódica para calcular o valor de um polinômio a partir de um escalar:

math( x1 = p1, x2 = 0)
output: 1
math( x1 = p1, x2 = 2)
output: 3
math( x1 = p2, x2 = 2)
output: 7
math( x1= p2, x2 = 1)
output: 3

O uso de uma função metódica para calcular o valor de um polinômio a partir de uma matriz:

math( x1 = p1, x2 = a)
     [,1] [,2]
[1,]    3    0
[2,]    0    2

math( x1= p2, x2 = a)

     [,1] [,2]
[1,]    7    0
[2,]    0    3

questionAnswers(1)

yourAnswerToTheQuestion