0% found this document useful (0 votes)
8 views3 pages

'Enter The First Wavelength (NM) : ' 'Enter The Second Wavelength (NM) : '

FF

Uploaded by

Nayan patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views3 pages

'Enter The First Wavelength (NM) : ' 'Enter The Second Wavelength (NM) : '

FF

Uploaded by

Nayan patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

% User inputs for wavelengths

lambda1_nm = input('Enter the first wavelength (nm): '); % Shorter wavelength


lambda2_nm = input('Enter the second wavelength (nm): '); % Longer wavelength

% Convert wavelengths to meters


lambda1 = lambda1_nm * 1e-9;
lambda2 = lambda2_nm * 1e-9;

% Parameters (assuming fibers are identical)


n_core = 1.45; % Refractive index of core
n_cladding = 1.44; % Refractive index of cladding
core_diameter = 8e-6; % Core diameter (m)
d = 10e-6; % Distance between the two cores (m)

% Difference in refractive indices


delta_n = n_core - n_cladding;

% Coupling coefficient calculation for each wavelength


kappa1 = (pi / lambda1) * sqrt(delta_n / core_diameter) * exp(-pi * d / core_diameter);
kappa2 = (pi / lambda2) * sqrt(delta_n / core_diameter) * exp(-pi * d / core_diameter);

% Beat lengths in micrometers (μm)


beat_length1_um = (2 * pi) / kappa1 * 1e6;
beat_length2_um = (2 * pi) / kappa2 * 1e6;

% Display beat lengths


fprintf('Beat Length for Wavelength %.1f nm: %.3f μm\n', lambda1_nm, beat_length1_um);
fprintf('Beat Length for Wavelength %.1f nm: %.3f μm\n', lambda2_nm, beat_length2_um);

% Interaction length range for plotting (in meters)


L_range = linspace(0, 2 * max(beat_length1_um, beat_length2_um) * 1e-6, 1000);
L_range_um = L_range * 1e6; % Convert to micrometers (μm)

% Calculate power transfer for each wavelength


power_Fiber1_wl1 = cos(kappa1 * L_range).^2; % Power in Fiber 1 for λ1
power_Fiber1_wl2 = cos(kappa2 * L_range).^2; % Power in Fiber 1 for λ2

% Calculate the length where phase difference between two wavelengths is 180 degrees (π radians)
% The phase difference Δφ = kappa1 * L - kappa2 * L = π
% Solve for L: L = π / (kappa1 - kappa2)

% Avoid division by zero


if kappa1 ~= kappa2
L_phase_diff_180 = pi / abs(kappa1 - kappa2); % Length for phase difference of π radians
else
L_phase_diff_180 = NaN; % Not possible if kappa1 == kappa2
end
% Display the length
if ~isnan(L_phase_diff_180)
fprintf('Interaction Length for 180 degrees phase difference: %.2f μm\n', L_phase_diff_180 * 1e6);
else
fprintf('Phase difference of 180 degrees is not achievable with equal coupling coefficients.\n');
end

% Plot power transfer for both wavelengths in a single graph


figure;

% Plotting first wavelength in Fiber 1


plot(L_range_um, power_Fiber1_wl1, 'b-', 'LineWidth', 1.5, 'DisplayName', sprintf('%.1f nm in Fiber 1',
lambda1_nm));
hold on;

% Plotting second wavelength in Fiber 1


plot(L_range_um, power_Fiber1_wl2, 'r-', 'LineWidth', 1.5, 'DisplayName', sprintf('%.1f nm in Fiber 1',
lambda2_nm));

% Add beat length lines


xline(beat_length1_um, 'k--', 'LineWidth', 1.5, 'DisplayName', sprintf('Beat Length (%.1f nm)', lambda1_nm));
xline(beat_length2_um, 'k-.', 'LineWidth', 1.5, 'DisplayName', sprintf('Beat Length (%.1f nm)', lambda2_nm));

% Add phase difference line if applicable


if ~isnan(L_phase_diff_180)
xline(L_phase_diff_180 * 1e6, 'm--', 'LineWidth', 1.5, 'DisplayName', '180 Degrees Phase Difference');
end

% Annotate plot
xlabel('Interaction Length (μm)');
ylabel('Power Ratio');
title('Power Transfer in Fiber 1 with Beat Lengths and Phase Difference');
legend('show');
grid on;
xlim([0, max(L_range_um)]);
ylim([0, 1]);

hold off;

% Display Port and Fiber Information


fprintf('\nPort and Fiber Information:\n');
fprintf('Both wavelengths (%.1f nm and %.1f nm) start in Fiber 1 (P1).\n', lambda1_nm, lambda2_nm);
fprintf('Beat lengths indicate the point where energy begins to couple into Fiber 2.\n');
fprintf('Interaction length where phase difference of 180 degrees (π radians) occurs: %.2f μm\n',
L_phase_diff_180 * 1e6);

Enter the first wavelength (nm):


1067
Enter the second wavelength (nm):
989
Beat Length for Wavelength 1067.0 nm: 3.063 μm
Beat Length for Wavelength 989.0 nm: 2.839 μm
Interaction Length for 180 degrees phase difference: 19.42 μm

Port and Fiber Information:


Both wavelengths (1067.0 nm and 989.0 nm) start in Fiber 1 (P1).
Beat lengths indicate the point where energy begins to couple into Fiber 2.
Interaction length where phase difference of 180 degrees (π radians) occurs: 19.42 μm

You might also like