Add basic code

This commit is contained in:
Ksyer
2024-07-16 15:55:00 +08:00
parent e98983b374
commit 1c009370a5
6 changed files with 121 additions and 19 deletions
+6 -5
View File
@@ -38,7 +38,6 @@ function [x_hat_wl, x_hat_d] = cVAMPro(y, A, lambda, tau, Kit)
h_1 = h_1_next;
Q_1 = Q_1_next;
end
end
% SoftThreshold function
@@ -48,7 +47,8 @@ function x = ST(h_1, lambda, Q_1)
for i = 1:N
sign = h_1(i) ./ abs(h_1(i));
diff = abs(h_1(i)) - lambda(i);
% diff = abs(h_1(i)) - lambda(i);
diff = abs(h_1(i)) - lambda;
x(i) = sign .* (diff ./ Q_1) .* SF(diff);
end
@@ -73,9 +73,10 @@ function chi_1 = F1(x_1, lambda, Q_1)
count = 0;
for i = 1:N
temp = Q_1 * abs(x_1(i)) + lambda(i);
count = count + (2 - lambda(i) / temp) * SF(abs(x_1(i)));
% count = count + (2-lambda(i)/temp) * (abs(x_1(i)) > 1e-4);
% temp = Q_1 * abs(x_1(i)) + lambda(i);
% count = count + (2 - lambda(i) / temp) * SF(abs(x_1(i)));
temp = Q_1 * abs(x_1(i)) + lambda;
count = count + (2 - lambda / temp) * SF(abs(x_1(i)));
end
chi_1 = count / (2 * N * Q_1);