├── Alg_1.asv
├── Alg_1.m
├── Alg_1_cal_ESR.m
├── Alg_1_con.m
├── Alg_1_noRS.m
├── Algorithm1.asv
├── Algorithm1.m
├── Contents.m
├── Fig_4.m
├── Fig_7.asv
├── Fig_7.m
├── GMI_RS.m
├── GMI_SDMA.m
├── GPL.txt
├── LICENSE.txt
├── MANIFEST
├── README.md
├── README.txt
├── SDMA_ZF.m
├── Untitled2.asv
├── Untitled2.m
├── ZF_noRS.m
├── [0]
└── matlab.mat
├── builtins
├── @cvx
│ ├── abs.m
│ ├── blkdiag.m
│ ├── builtins.m
│ ├── cat.m
│ ├── conj.m
│ ├── conv.m
│ ├── ctranspose.m
│ ├── cumprod.m
│ ├── cumsum.m
│ ├── diag.m
│ ├── disp.m
│ ├── end.m
│ ├── eq.m
│ ├── exp.m
│ ├── find.m
│ ├── full.m
│ ├── ge.m
│ ├── gt.m
│ ├── hankel.m
│ ├── horzcat.m
│ ├── imag.m
│ ├── ipermute.m
│ ├── isreal.m
│ ├── kron.m
│ ├── ldivide.m
│ ├── le.m
│ ├── log.m
│ ├── lt.m
│ ├── max.m
│ ├── min.m
│ ├── minus.m
│ ├── mldivide.m
│ ├── mpower.m
│ ├── mrdivide.m
│ ├── mtimes.m
│ ├── ne.m
│ ├── nnz.m
│ ├── norm.m
│ ├── permute.m
│ ├── plus.m
│ ├── polyval.m
│ ├── power.m
│ ├── prod.m
│ ├── rdivide.m
│ ├── real.m
│ ├── reshape.m
│ ├── size.m
│ ├── sparse.m
│ ├── spy.m
│ ├── sqrt.m
│ ├── std.m
│ ├── subsasgn.m
│ ├── subsref.m
│ ├── sum.m
│ ├── times.m
│ ├── toeplitz.m
│ ├── transpose.m
│ ├── tril.m
│ ├── triu.m
│ ├── uminus.m
│ ├── uplus.m
│ ├── var.m
│ └── vertcat.m
├── @cvxcnst
│ ├── eq.m
│ ├── ge.m
│ ├── gt.m
│ ├── le.m
│ ├── lt.m
│ └── ne.m
└── Contents.m
├── cal_ABCD.m
├── cal_GMI.m
├── cal_X.m
├── cal_X_no_common.m
├── cal_ach_rate.m
├── commands
├── @cvx
│ └── commands.m
├── Contents.m
├── cvx_begin.m
├── cvx_clear.m
├── cvx_end.m
├── cvx_expert.m
├── cvx_pause.m
├── cvx_power_warning.m
├── cvx_precision.m
├── cvx_profile.m
├── cvx_quiet.m
├── cvx_save_prefs.m
├── cvx_solver.m
├── cvx_solver_settings.m
├── cvx_tic.m
├── cvx_toc.m
└── cvx_where.m
├── cvx_error.m
├── cvx_grbgetkey.m
├── cvx_license.p
├── cvx_setup.m
├── cvx_startup.m
├── cvx_version.m
├── doc
├── CVX.pdf
├── _images
│ ├── envelope.pdf
│ └── tradeoff.pdf
├── _sources
│ ├── advanced.txt
│ ├── basics.txt
│ ├── citing.txt
│ ├── credits.txt
│ ├── dcp.txt
│ ├── funcref.txt
│ ├── gp.txt
│ ├── gurobi.txt
│ ├── index.txt
│ ├── install.txt
│ ├── intro.txt
│ ├── license.txt
│ ├── mosek.txt
│ ├── quickstart.txt
│ ├── sdp.txt
│ ├── solver.txt
│ └── support.txt
├── _static
│ ├── ajax-loader.gif
│ ├── basic.css
│ ├── cloud.css
│ ├── cloud.js
│ ├── comment-bright.png
│ ├── comment-close.png
│ ├── comment.png
│ ├── cvxrlogo.png
│ ├── doctools.js
│ ├── down-pressed.png
│ ├── down.png
│ ├── file.png
│ ├── icon-deprecated.png
│ ├── icon-note.png
│ ├── icon-seealso.png
│ ├── icon-todo.png
│ ├── icon-warning.png
│ ├── jquery.cookie.js
│ ├── jquery.js
│ ├── minus.png
│ ├── plus.png
│ ├── pygments.css
│ ├── searchtools.js
│ ├── underscore.js
│ ├── up-pressed.png
│ ├── up.png
│ └── websupport.js
├── advanced.html
├── basics.html
├── citing.html
├── credits.html
├── dcp.html
├── funcref.html
├── genindex.html
├── gp.html
├── gurobi.html
├── index.html
├── install.html
├── intro.html
├── license.html
├── mosek.html
├── objects.inv
├── quickstart.html
├── sdp.html
├── search.html
├── searchindex.js
├── solver.html
└── support.html
├── examples
├── Contents.m
├── antenna_array_design
│ ├── Contents.m
│ ├── ant_array_min_beamwidth.m
│ ├── ant_array_min_sidelobe.m
│ ├── ant_array_min_therm_noise.m
│ ├── broadband_array_min_sidelobe.m
│ ├── html
│ │ ├── ant_array_min_beamwidth.html
│ │ ├── ant_array_min_beamwidth__01.png
│ │ ├── ant_array_min_beamwidth__02.png
│ │ ├── ant_array_min_beamwidth__03.png
│ │ ├── ant_array_min_sidelobe.html
│ │ ├── ant_array_min_sidelobe__01.png
│ │ ├── ant_array_min_sidelobe__02.png
│ │ ├── ant_array_min_sidelobe__03.png
│ │ ├── ant_array_min_therm_noise.html
│ │ ├── ant_array_min_therm_noise__01.png
│ │ ├── ant_array_min_therm_noise__02.png
│ │ ├── ant_array_min_therm_noise__03.png
│ │ ├── broadband_array_min_sidelobe.html
│ │ ├── broadband_array_min_sidelobe__01.png
│ │ ├── broadband_array_min_sidelobe__02.png
│ │ ├── broadband_array_min_sidelobe__03.png
│ │ ├── line_array_spec_fact.html
│ │ ├── line_array_spec_fact__01.png
│ │ ├── line_array_spec_fact__02.png
│ │ ├── polar_plot_ant.html
│ │ └── spectral_fact.html
│ ├── line_array_spec_fact.m
│ ├── polar_plot_ant.m
│ └── spectral_fact.m
├── bullet.gif
├── circuit_design
│ ├── Contents.m
│ ├── LC_osc_design.m
│ ├── clock_mesh.m
│ ├── dig_ckt_sizing.m
│ ├── elmore_straight_wire.m
│ ├── html
│ │ ├── LC_osc_design.html
│ │ ├── LC_osc_design__01.png
│ │ ├── clock_mesh.html
│ │ ├── clock_mesh__01.png
│ │ ├── clock_mesh__02.png
│ │ ├── clock_mesh__03.png
│ │ ├── dig_ckt_sizing.html
│ │ ├── dig_ckt_sizing__01.png
│ │ ├── elmore_straight_wire.html
│ │ ├── elmore_straight_wire__01.png
│ │ ├── elmore_straight_wire__02.png
│ │ ├── inverter_chain_sizing.html
│ │ ├── inverter_chain_sizing__01.png
│ │ ├── plot_four_tapers.html
│ │ ├── simple_NAND2_gate_design.html
│ │ ├── simple_NAND2_gate_design__01.png
│ │ ├── simple_step.html
│ │ ├── tristate_bus_sizing.html
│ │ ├── tristate_bus_sizing__01.png
│ │ ├── tristate_bus_sizing__02.png
│ │ ├── tristate_bus_sizing__03.png
│ │ ├── tristate_bus_sizing__04.png
│ │ ├── tristate_bus_sizing__05.png
│ │ ├── tristate_bus_sizing__06.png
│ │ ├── tristate_bus_sizing__07.png
│ │ ├── tristate_bus_sizing__08.png
│ │ ├── tristate_bus_sizing__09.png
│ │ ├── tristate_bus_sizing__10.png
│ │ ├── tristate_bus_sizing__11.png
│ │ ├── tristate_bus_sizing__12.png
│ │ ├── tristate_bus_sizing__13.png
│ │ ├── wire_driver_sizing.html
│ │ ├── wire_driver_sizing__01.png
│ │ ├── wire_driver_sizing__02.png
│ │ ├── wire_driver_sizing__03.png
│ │ ├── wire_sizing.html
│ │ ├── wire_sizing__01.png
│ │ ├── wire_sizing__02.png
│ │ ├── wire_sizing__03.png
│ │ ├── wire_sizing__04.png
│ │ ├── wire_sizing__05.png
│ │ ├── wire_sizing__06.png
│ │ ├── wire_sizing_spacing.html
│ │ ├── wire_sizing_spacing__01.png
│ │ ├── wire_sizing_spacing__02.png
│ │ ├── wire_sizing_spacing__03.png
│ │ ├── wire_sizing_spacing__04.png
│ │ ├── wire_sizing_spacing__05.png
│ │ ├── wire_sizing_spacing__06.png
│ │ ├── wire_sizing_spacing__07.png
│ │ ├── wire_sizing_spacing__08.png
│ │ ├── wire_sizing_spacing__09.png
│ │ ├── wire_sizing_topology.html
│ │ ├── wire_sizing_topology__01.png
│ │ ├── wire_sizing_topology__02.png
│ │ ├── wire_sizing_topology__03.png
│ │ └── wire_sizing_topology__04.png
│ ├── inverter_chain_sizing.m
│ ├── plot_four_tapers.m
│ ├── simple_NAND2_gate_design.m
│ ├── simple_step.m
│ ├── tristate_bus_sizing.m
│ ├── wire_driver_sizing.m
│ ├── wire_sizing.m
│ ├── wire_sizing_spacing.m
│ └── wire_sizing_topology.m
├── closest_toeplitz_psd.m
├── cvxbook
│ ├── Ch04_cvx_opt_probs
│ │ ├── Contents.m
│ │ ├── cantilever_beam.m
│ │ ├── cantilever_beam_plot.m
│ │ ├── cantilever_beam_rec.m
│ │ ├── channel_capacity.m
│ │ ├── chebyshev_center.m
│ │ ├── chebyshev_center_2D.m
│ │ ├── ex_4_27.m
│ │ ├── ex_4_3.m
│ │ ├── ex_4_38.m
│ │ ├── ex_4_5.m
│ │ ├── fastest_mixing_MC.m
│ │ ├── frob_norm_diag_scaling.m
│ │ ├── html
│ │ │ ├── cantilever_beam.html
│ │ │ ├── cantilever_beam__01.png
│ │ │ ├── cantilever_beam_plot.html
│ │ │ ├── cantilever_beam_rec.html
│ │ │ ├── cantilever_beam_rec__01.png
│ │ │ ├── channel_capacity.html
│ │ │ ├── chebyshev_center.html
│ │ │ ├── chebyshev_center_2D.html
│ │ │ ├── chebyshev_center_2D__01.png
│ │ │ ├── ex_4_27.html
│ │ │ ├── ex_4_3.html
│ │ │ ├── ex_4_38.html
│ │ │ ├── ex_4_5.html
│ │ │ ├── fastest_mixing_MC.html
│ │ │ ├── frob_norm_diag_scaling.html
│ │ │ ├── logopt_investment.html
│ │ │ ├── logopt_investment__01.png
│ │ │ ├── max_det_psd_completion.html
│ │ │ └── min_spec_rad_ppl_dynamics.html
│ │ ├── logopt_investment.m
│ │ ├── max_det_psd_completion.m
│ │ └── min_spec_rad_ppl_dynamics.m
│ ├── Ch05_duality
│ │ ├── Contents.m
│ │ ├── ex_5_1.m
│ │ ├── ex_5_19.m
│ │ ├── ex_5_33.m
│ │ ├── ex_5_39.m
│ │ ├── html
│ │ │ ├── ex_5_1.html
│ │ │ ├── ex_5_19.html
│ │ │ ├── ex_5_1__01.png
│ │ │ ├── ex_5_33.html
│ │ │ ├── ex_5_33__01.png
│ │ │ ├── ex_5_39.html
│ │ │ ├── matrix_games.html
│ │ │ ├── matrix_games_LP.html
│ │ │ ├── norm_approx.html
│ │ │ └── qcqp.html
│ │ ├── matrix_games.m
│ │ ├── matrix_games_LP.m
│ │ ├── norm_approx.m
│ │ └── qcqp.m
│ ├── Ch06_approx_fitting
│ │ ├── Contents.m
│ │ ├── basispursuit.m
│ │ ├── convex_interpolation.m
│ │ ├── deadzone.m
│ │ ├── fig6_15.m
│ │ ├── fig6_19.m
│ │ ├── fig6_20.m
│ │ ├── fig6_5.m
│ │ ├── fig6_6.m
│ │ ├── fig6_9.m
│ │ ├── html
│ │ │ ├── basispursuit.html
│ │ │ ├── basispursuit__01.png
│ │ │ ├── basispursuit__02.png
│ │ │ ├── basispursuit__03.png
│ │ │ ├── convex_interpolation.html
│ │ │ ├── convex_interpolation__01.png
│ │ │ ├── deadzone.html
│ │ │ ├── fig6_15.html
│ │ │ ├── fig6_15__01.png
│ │ │ ├── fig6_19.html
│ │ │ ├── fig6_19__01.png
│ │ │ ├── fig6_20.html
│ │ │ ├── fig6_20__01.png
│ │ │ ├── fig6_5.html
│ │ │ ├── fig6_5__01.png
│ │ │ ├── fig6_6.html
│ │ │ ├── fig6_6__01.png
│ │ │ ├── fig6_6__02.png
│ │ │ ├── fig6_6__03.png
│ │ │ ├── fig6_6__04.png
│ │ │ ├── fig6_6__05.png
│ │ │ ├── fig6_6__06.png
│ │ │ ├── fig6_9.html
│ │ │ ├── fig6_9__01.png
│ │ │ ├── penalty_comp_cvx.html
│ │ │ ├── penalty_comp_cvx__01.png
│ │ │ ├── preference_regions.html
│ │ │ ├── preference_regions__01.png
│ │ │ ├── preference_regions__02.png
│ │ │ ├── regressor_cvx.html
│ │ │ ├── regressor_cvx__01.png
│ │ │ ├── smoothrec_cvx.html
│ │ │ ├── smoothrec_cvx__01.png
│ │ │ ├── smoothrec_cvx__02.png
│ │ │ ├── smoothrec_cvx__03.png
│ │ │ ├── tv_cvx.html
│ │ │ ├── tv_cvx__01.png
│ │ │ ├── tv_cvx__02.png
│ │ │ ├── tv_cvx__03.png
│ │ │ ├── tv_cvx__04.png
│ │ │ ├── tv_cvx__05.png
│ │ │ ├── wcrobls.html
│ │ │ └── wcrobls__01.png
│ │ ├── penalty_comp_cvx.m
│ │ ├── preference_regions.m
│ │ ├── regressor_cvx.m
│ │ ├── smoothrec_cvx.m
│ │ ├── tv_cvx.m
│ │ └── wcrobls.m
│ ├── Ch07_statistical_estim
│ │ ├── Contents.m
│ │ ├── ML_covariance_est.m
│ │ ├── cheb.m
│ │ ├── cher.m
│ │ ├── counting_problem_poisson.m
│ │ ├── detector2.m
│ │ ├── expdesign.m
│ │ ├── html
│ │ │ ├── ML_covariance_est.html
│ │ │ ├── cheb.html
│ │ │ ├── cher.html
│ │ │ ├── counting_problem_poisson.html
│ │ │ ├── detector2.html
│ │ │ ├── detector2__01.png
│ │ │ ├── expdesign.html
│ │ │ ├── expdesign__01.png
│ │ │ ├── expdesign__02.png
│ │ │ ├── expdesign__03.png
│ │ │ ├── expdesign__04.png
│ │ │ ├── logistics.html
│ │ │ ├── logistics__01.png
│ │ │ ├── logistics_gp.html
│ │ │ ├── logistics_gp__01.png
│ │ │ ├── maxent.html
│ │ │ ├── maxent__01.png
│ │ │ ├── maxent__02.png
│ │ │ ├── montecarlo.html
│ │ │ ├── probbounds.html
│ │ │ ├── probbounds__01.png
│ │ │ ├── probbounds__02.png
│ │ │ └── probbounds__03.png
│ │ ├── logistics.m
│ │ ├── logistics_gp.m
│ │ ├── maxent.m
│ │ ├── montecarlo.m
│ │ └── probbounds.m
│ ├── Ch08_geometric_probs
│ │ ├── Contents.m
│ │ ├── analytic_center.m
│ │ ├── data_floorplan_32.mat
│ │ ├── data_floorplan_60.mat
│ │ ├── eucl_dist_poly.m
│ │ ├── eucl_dist_poly_2D.m
│ │ ├── eucl_proj_cone1.m
│ │ ├── eucl_proj_cone2.m
│ │ ├── eucl_proj_hlf.m
│ │ ├── eucl_proj_hyp.m
│ │ ├── eucl_proj_rect.m
│ │ ├── eucl_proj_rect.m~
│ │ ├── ex_8_3.m
│ │ ├── ex_8_4.m
│ │ ├── ex_8_5.m
│ │ ├── floor_plan.m
│ │ ├── floor_plan_graphs.m
│ │ ├── floorplan.m
│ │ ├── html
│ │ │ ├── analytic_center.html
│ │ │ ├── eucl_dist_poly.html
│ │ │ ├── eucl_dist_poly_2D.html
│ │ │ ├── eucl_dist_poly_2D__01.png
│ │ │ ├── eucl_proj_cone1.html
│ │ │ ├── eucl_proj_cone2.html
│ │ │ ├── eucl_proj_hlf.html
│ │ │ ├── eucl_proj_hyp.html
│ │ │ ├── eucl_proj_rect.html
│ │ │ ├── ex_8_3.html
│ │ │ ├── ex_8_4.html
│ │ │ ├── ex_8_5.html
│ │ │ ├── floor_plan.html
│ │ │ ├── floor_plan__01.png
│ │ │ ├── floor_plan_graphs.html
│ │ │ ├── floor_plan_graphs__01.png
│ │ │ ├── floorplan.html
│ │ │ ├── linear_discr.html
│ │ │ ├── linear_discr__01.png
│ │ │ ├── max_vol_ellip_in_polyhedra.html
│ │ │ ├── max_vol_ellip_in_polyhedra__01.png
│ │ │ ├── min_vol_elp_finite_set.html
│ │ │ ├── min_vol_elp_finite_set__01.png
│ │ │ ├── min_vol_union_ellip.html
│ │ │ ├── min_vol_union_ellip__01.png
│ │ │ ├── placement_lin.html
│ │ │ ├── placement_lin__01.png
│ │ │ ├── placement_lin__02.png
│ │ │ ├── placement_quad.html
│ │ │ ├── placement_quad__01.png
│ │ │ ├── placement_quad__02.png
│ │ │ ├── placement_quar.html
│ │ │ ├── placement_quar__01.png
│ │ │ ├── placement_quar__02.png
│ │ │ ├── poly3_discr.html
│ │ │ ├── poly3_discr__01.png
│ │ │ ├── poly4_discr.html
│ │ │ ├── poly4_discr__01.png
│ │ │ ├── quad_discr.html
│ │ │ ├── quad_discr__01.png
│ │ │ ├── robust_lin_discr.html
│ │ │ ├── robust_lin_discr__01.png
│ │ │ ├── separate_ell_2D.html
│ │ │ ├── separate_ell_2D__01.png
│ │ │ ├── separate_poly_2D.html
│ │ │ ├── separate_poly_2D__01.png
│ │ │ ├── separate_pt_poly.html
│ │ │ ├── svm_1.html
│ │ │ ├── svm_1__01.png
│ │ │ ├── svm_2.html
│ │ │ ├── svm_2__01.png
│ │ │ ├── test_floorplan.html
│ │ │ └── test_floorplan__01.png
│ │ ├── linear_discr.m
│ │ ├── max_vol_ellip_in_polyhedra.m
│ │ ├── min_vol_elp_finite_set.m
│ │ ├── min_vol_union_ellip.m
│ │ ├── placement_lin.m
│ │ ├── placement_quad.m
│ │ ├── placement_quar.m
│ │ ├── poly3_discr.m
│ │ ├── poly4_discr.m
│ │ ├── quad_discr.m
│ │ ├── robust_lin_discr.m
│ │ ├── separate_ell_2D.m
│ │ ├── separate_poly_2D.m
│ │ ├── separate_pt_poly.m
│ │ ├── svm_1.m
│ │ ├── svm_2.m
│ │ └── test_floorplan.m
│ ├── Ch11_intpt_methods
│ │ ├── Contents.m
│ │ ├── html
│ │ │ └── log_utility_flow.html
│ │ └── log_utility_flow.m
│ └── Contents.m
├── equality_constr_norm_min.m
├── examples.css
├── examples.js
├── filter_design
│ ├── Contents.m
│ ├── equalizer_design.m
│ ├── fir_chebychev_design.m
│ ├── fir_lin_phase_lowpass_max_atten.m
│ ├── fir_lin_phase_lowpass_min_order.m
│ ├── fir_lin_phase_lowpass_min_ripple.m
│ ├── fir_lin_phase_lowpass_min_trans.m
│ ├── fir_mag_design_lowpass_max_atten.m
│ ├── fir_mag_design_lowpass_min_order.m
│ ├── html
│ │ ├── equalizer_design.html
│ │ ├── equalizer_design__01.png
│ │ ├── equalizer_design__02.png
│ │ ├── equalizer_design__03.png
│ │ ├── equalizer_design__04.png
│ │ ├── equalizer_design__05.png
│ │ ├── equalizer_design__06.png
│ │ ├── equalizer_design__07.png
│ │ ├── equalizer_design__08.png
│ │ ├── fir_chebychev_design.html
│ │ ├── fir_chebychev_design__01.png
│ │ ├── fir_chebychev_design__02.png
│ │ ├── fir_lin_phase_lowpass_max_atten.html
│ │ ├── fir_lin_phase_lowpass_max_atten__01.png
│ │ ├── fir_lin_phase_lowpass_max_atten__02.png
│ │ ├── fir_lin_phase_lowpass_min_order.html
│ │ ├── fir_lin_phase_lowpass_min_order__01.png
│ │ ├── fir_lin_phase_lowpass_min_order__02.png
│ │ ├── fir_lin_phase_lowpass_min_ripple.html
│ │ ├── fir_lin_phase_lowpass_min_ripple__01.png
│ │ ├── fir_lin_phase_lowpass_min_ripple__02.png
│ │ ├── fir_lin_phase_lowpass_min_trans.html
│ │ ├── fir_lin_phase_lowpass_min_trans__01.png
│ │ ├── fir_lin_phase_lowpass_min_trans__02.png
│ │ ├── fir_mag_design_lowpass_max_atten.html
│ │ ├── fir_mag_design_lowpass_max_atten__01.png
│ │ ├── fir_mag_design_lowpass_max_atten__02.png
│ │ ├── fir_mag_design_lowpass_min_order.html
│ │ ├── fir_mag_design_lowpass_min_order__01.png
│ │ ├── fir_mag_design_lowpass_min_order__02.png
│ │ ├── iir_mag_design_bandpass_max_atten.html
│ │ ├── iir_mag_design_bandpass_max_atten__01.png
│ │ ├── iir_mag_design_lowpass_max_atten.html
│ │ ├── iir_mag_design_lowpass_max_atten__01.png
│ │ ├── one_over_f_filter.html
│ │ ├── one_over_f_filter__01.png
│ │ └── spectral_fact.html
│ ├── iir_mag_design_bandpass_max_atten.m
│ ├── iir_mag_design_lowpass_max_atten.m
│ ├── one_over_f_filter.m
│ └── spectral_fact.m
├── gp_tutorial
│ ├── Contents.m
│ ├── basic_odp.m
│ ├── beta_min_odp.m
│ ├── elmore_interconnect.m
│ ├── floor_planning.m
│ ├── html
│ │ ├── basic_odp.html
│ │ ├── basic_odp__01.png
│ │ ├── beta_min_odp.html
│ │ ├── beta_min_odp__01.png
│ │ ├── elmore_interconnect.html
│ │ ├── elmore_interconnect__01.png
│ │ ├── floor_planning.html
│ │ ├── floor_planning__01.png
│ │ ├── max_volume_box.html
│ │ ├── max_volume_box__01.png
│ │ ├── power_control.html
│ │ ├── simple_dig_ckt_sizing.html
│ │ ├── simple_dig_ckt_sizing__01.png
│ │ ├── simple_dig_ckt_sizing_vect.html
│ │ └── simple_dig_ckt_sizing_vect__01.png
│ ├── max_volume_box.m
│ ├── power_control.m
│ ├── simple_dig_ckt_sizing.m
│ └── simple_dig_ckt_sizing_vect.m
├── graph_laplacian
│ ├── Contents.m
│ ├── best_const.m
│ ├── cut_grid_data.m
│ ├── cut_grid_example.m
│ ├── fdla.m
│ ├── fmmc.m
│ ├── html
│ │ ├── best_const.html
│ │ ├── cut_grid_data.html
│ │ ├── cut_grid_example.html
│ │ ├── cut_grid_example__01.png
│ │ ├── cut_grid_example__02.png
│ │ ├── cut_grid_example__03.png
│ │ ├── cut_grid_example__04.png
│ │ ├── cut_grid_example__05.png
│ │ ├── fdla.html
│ │ ├── fmmc.html
│ │ ├── larger_example.html
│ │ ├── larger_example__01.png
│ │ ├── larger_example__02.png
│ │ ├── larger_example__03.png
│ │ ├── larger_example__04.png
│ │ ├── larger_example__05.png
│ │ ├── larger_example__06.png
│ │ ├── max_deg.html
│ │ ├── mh.html
│ │ ├── plotgraph.html
│ │ ├── small_example.html
│ │ ├── small_example__01.png
│ │ ├── small_example__02.png
│ │ ├── small_example__03.png
│ │ ├── small_example__04.png
│ │ └── small_example__05.png
│ ├── larger_example.m
│ ├── max_deg.m
│ ├── mh.m
│ ├── plotgraph.m
│ └── small_example.m
├── html
│ ├── closest_toeplitz_psd.html
│ ├── equality_constr_norm_min.html
│ ├── min_phase_spectral_fact.html
│ ├── nonneg_matrix_fact.html
│ ├── nonneg_matrix_fact__01.png
│ ├── quickstart.html
│ ├── quickstart__01.png
│ ├── regularized_norm_tradeoff.html
│ ├── regularized_norm_tradeoff__01.png
│ ├── regularized_norm_tradeoff__02.png
│ ├── simple_LP.html
│ ├── simple_LP2.html
│ └── simple_LS.html
├── index.html
├── log_exp
│ ├── Contents.m
│ ├── html
│ │ ├── max_entropy.html
│ │ ├── sparse_covariance_est.html
│ │ ├── sparse_covariance_est__01.png
│ │ ├── sparse_covariance_est_tradeoff.html
│ │ ├── sparse_covariance_est_tradeoff__01.png
│ │ └── weighted_analytic_center.html
│ ├── max_entropy.m
│ ├── sparse_covariance_est.m
│ ├── sparse_covariance_est_tradeoff.m
│ └── weighted_analytic_center.m
├── make.m
├── min_phase_spectral_fact.m
├── minus.gif
├── nonneg_matrix_fact.m
├── plus.gif
├── quickstart.m
├── regularized_norm_tradeoff.m
├── simple_LP.m
├── simple_LP2.m
├── simple_LS.m
├── sparse_heuristics
│ ├── Contents.m
│ ├── html
│ │ ├── sparse_infeas.html
│ │ ├── sparse_infeas_dual.html
│ │ ├── sparse_solution.html
│ │ └── sparse_solution__01.png
│ ├── sparse_infeas.m
│ ├── sparse_infeas_dual.m
│ └── sparse_solution.m
└── time_series_analysis
│ ├── Contents.m
│ ├── html
│ ├── l1_trend_filter_snp500.html
│ └── l1_trend_filter_snp500__01.png
│ ├── l1_trend_filter_snp500.m
│ └── snp500.txt
├── find_p.m
├── functions
├── @cvx
│ ├── avg_abs_dev.m
│ ├── avg_abs_dev_med.m
│ ├── berhu.m
│ ├── cvx_recip.m
│ ├── det_inv.m
│ ├── det_rootn.m
│ ├── functions.m
│ ├── geo_mean.m
│ ├── huber_pos.m
│ ├── inv_pos.m
│ ├── lambda_max.m
│ ├── lambda_sum_largest.m
│ ├── log_normcdf.m
│ ├── log_sum_exp.m
│ ├── matrix_frac.m
│ ├── norm_nuc.m
│ ├── norms.m
│ ├── pow_abs.m
│ ├── pow_cvx.m
│ ├── pow_p.m
│ ├── pow_pos.m
│ ├── prod_inv.m
│ ├── quad_form.m
│ ├── quad_over_lin.m
│ ├── quad_pos_over_lin.m
│ ├── rel_entr.m
│ ├── sigma_max.m
│ ├── square.m
│ ├── square_abs.m
│ ├── square_pos.m
│ ├── sum_largest.m
│ ├── sum_log.m
│ ├── sum_square.m
│ ├── sum_square_abs.m
│ ├── sum_square_pos.m
│ ├── trace_inv.m
│ ├── trace_sqrtm.m
│ └── vec.m
├── Contents.m
├── avg_abs_dev.m
├── avg_abs_dev_med.m
├── berhu.m
├── det_inv.m
├── det_root2n.m
├── det_rootn.m
├── entr.m
├── geo_mean.m
├── geomean.m
├── huber.m
├── huber_circ.m
├── huber_pos.m
├── inv_pos.m
├── kl_div.m
├── lambda_max.m
├── lambda_min.m
├── lambda_sum_largest.m
├── lambda_sum_smallest.m
├── log_det.m
├── log_normcdf.m
├── log_prod.m
├── log_sum_exp.m
├── logsumexp.m
├── logsumexp_sdp.m
├── matrix_frac.m
├── norm_largest.m
├── norm_nuc.m
├── norms.m
├── norms_largest.m
├── poly_env.m
├── polyenv.m
├── polyval_trig.m
├── pos.m
├── pow_abs.m
├── pow_p.m
├── pow_pos.m
├── prod_inv.m
├── quad_form.m
├── quad_over_lin.m
├── quad_pos_over_lin.m
├── rel_entr.m
├── sigma_max.m
├── square_
│ └── square.m
├── square_abs.m
├── square_pos.m
├── sum_largest.m
├── sum_log.m
├── sum_smallest.m
├── sum_square.m
├── sum_square_abs.m
├── sum_square_pos.m
├── sym.m
├── trace_inv.m
├── trace_sqrtm.m
└── vec_
│ └── vec.m
├── gurobi
├── EULA.pdf
└── w64
│ ├── grbgetkey.exe
│ ├── gurobi.mexw64
│ └── gurobi75.dll
├── keywords
├── Contents.m
├── In.m
├── binary.m
├── dual.m
├── epigraph.m
├── expression.m
├── expressions.m
├── hypograph.m
├── integer.m
├── maximise.m
├── maximize.m
├── minimise.m
├── minimize.m
├── subject.m
├── variable.m
└── variables.m
├── lib
├── @cell
│ ├── cvx_id.m
│ ├── cvx_setdual.m
│ └── cvx_value.m
├── @cvx
│ ├── bcompress.m
│ ├── buncompress.m
│ ├── cvx.m
│ ├── cvx_basis.m
│ ├── cvx_classify.m
│ ├── cvx_constant.m
│ ├── cvx_getdual.m
│ ├── cvx_isaffine.m
│ ├── cvx_isconcave.m
│ ├── cvx_isconstant.m
│ ├── cvx_isconvex.m
│ ├── cvx_isnonzero.m
│ ├── cvx_readlevel.m
│ ├── cvx_setdual.m
│ ├── cvx_value.m
│ ├── cvx_vexity.m
│ ├── in.m
│ ├── keywords.m
│ ├── matlab6.m
│ ├── sets.m
│ ├── sparsify.m
│ ├── svec.m
│ ├── type.m
│ └── value.m
├── @cvxcnst
│ ├── cvxcnst.m
│ ├── disp.m
│ ├── display.m
│ ├── double.m
│ ├── logical.m
│ └── rhs.m
├── @cvxdual
│ ├── colon.m
│ ├── cvx_basis.m
│ ├── cvx_value.m
│ ├── cvxaff.m
│ ├── cvxdual.m
│ ├── disp.m
│ ├── display.m
│ ├── dof.m
│ ├── inuse.m
│ ├── isreal.m
│ ├── name.m
│ ├── problem.m
│ ├── size.m
│ ├── subsref.m
│ ├── type.m
│ └── value.m
├── @cvxin
│ ├── cvxin.m
│ ├── cvxtuple.m
│ ├── gt.m
│ └── lt.m
├── @cvxobj
│ ├── cvx_id.m
│ ├── cvxobj.m
│ ├── disp.m
│ ├── display.m
│ ├── isempty.m
│ ├── isequal.m
│ ├── length.m
│ ├── ndims.m
│ ├── numel.m
│ ├── subsasgn.m
│ └── subsref.m
├── @cvxprob
│ ├── cvx_value.m
│ ├── cvxprob.m
│ ├── disp.m
│ ├── eliminate.m
│ ├── eq.m
│ ├── extract.m
│ ├── index.m
│ ├── ne.m
│ ├── newcnstr.m
│ ├── newdual.m
│ ├── newnonl.m
│ ├── newobj.m
│ ├── newtemp.m
│ ├── newvar.m
│ ├── pop.m
│ ├── solve.m
│ ├── spy.m
│ ├── subsasgn.m
│ ├── subsref.m
│ └── touch.m
├── @cvxtuple
│ ├── apply.m
│ ├── cvx_collapse.m
│ ├── cvx_constant.m
│ ├── cvx_getdual.m
│ ├── cvx_id.m
│ ├── cvx_isaffine.m
│ ├── cvx_isconcave.m
│ ├── cvx_isconstant.m
│ ├── cvx_isconvex.m
│ ├── cvx_setdual.m
│ ├── cvx_value.m
│ ├── cvxtuple.m
│ ├── disp.m
│ ├── eq.m
│ ├── ge.m
│ ├── gt.m
│ ├── in.m
│ ├── le.m
│ ├── lt.m
│ ├── ne.m
│ ├── numel.m
│ ├── subsasgn.m
│ ├── subsref.m
│ └── testall.m
├── Contents.m
├── cvx_accept_concave.m
├── cvx_accept_convex.m
├── cvx_basis.m
├── cvx_bcompress.m
├── cvx_bcompress_mex.c
├── cvx_bcompress_mex.mexw64
├── cvx_blkdiag.m
├── cvx_c2r.m
├── cvx_check_dimension.m
├── cvx_check_dimlist.m
├── cvx_class.m
├── cvx_classify.m
├── cvx_clearpath.m
├── cvx_clearspath.m
├── cvx_collapse.m
├── cvx_constant.m
├── cvx_default_dimension.m
├── cvx_eliminate_mex.c
├── cvx_eliminate_mex.mexw64
├── cvx_expand_dim.m
├── cvx_expert_check.m
├── cvx_getdual.m
├── cvx_global.m
├── cvx_id.m
├── cvx_ids.m
├── cvx_isaffine.m
├── cvx_isconcave.m
├── cvx_isconstant.m
├── cvx_isconvex.m
├── cvx_isnonzero.m
├── cvx_r2c.m
├── cvx_readlevel.m
├── cvx_reduce_size.m
├── cvx_remap.m
├── cvx_reshape.m
├── cvx_run_solver.m
├── cvx_setdual.m
├── cvx_setpath.m
├── cvx_setspath.m
├── cvx_size_check.m
├── cvx_subs2str.m
├── cvx_subsasgn.m
├── cvx_subsref.m
├── cvx_subsref_check.m
├── cvx_use_sparse.m
├── cvx_value.m
├── cvx_values.m
├── cvx_vexity.m
├── cvx_zeros.m
└── narginchk_
│ └── narginchk.m
├── mosek
├── license.pdf
└── w64
│ ├── cilkrts20.dll
│ ├── libiomp5md.dll
│ ├── mosek64_8_0.dll
│ └── mosekopt.mexw64
├── sdpt3
├── Copyright
├── Examples
│ ├── Asum.m
│ ├── Doptdesign.m
│ ├── ToeplitzApprox.m
│ ├── ToeplitzApproxSQQ.m
│ ├── cheby0.m
│ ├── chebyinf.m
│ ├── chebymat.m
│ ├── control.m
│ ├── corrmat.m
│ ├── dwd.m
│ ├── etp.m
│ ├── geometric_mean.m
│ ├── gpp.m
│ ├── gppschur.m
│ ├── graph.m
│ ├── igmres.m
│ ├── lmiexamp1.m
│ ├── lmiexamp2.m
│ ├── lmiexamp3.m
│ ├── lmifun.m
│ ├── lmifun2.m
│ ├── logcheby.m
│ ├── logchebyRcone.m
│ ├── max_kcut.m
│ ├── maxcut.m
│ ├── mcpschur.m
│ ├── minEpts.m
│ ├── norm_min.m
│ ├── orthbasis.m
│ ├── randinfsdp.m
│ ├── randlowranksdp.m
│ ├── randmaxdet.m
│ ├── randsdp.m
│ ├── sdphankel.m
│ ├── thetaproblem.m
│ └── viewgraph.m
├── GNU_General_Public_License_v2
├── HSDSolver
│ ├── HSDHKMcorr.m
│ ├── HSDHKMdirfun.m
│ ├── HSDHKMpred.m
│ ├── HSDHKMrhsfun.m
│ ├── HSDNTcorr.m
│ ├── HSDNTdirfun.m
│ ├── HSDNTpred.m
│ ├── HSDNTrhsfun.m
│ ├── HSDbicgstab.m
│ ├── HSDlinsysolve.m
│ ├── HSDsortA.m
│ ├── HSDsqlp.m
│ ├── HSDsqlpCpert.m
│ ├── HSDsqlpcheckconvg.m
│ ├── HSDsqlpmain.m
│ └── HSDsqlpmisc.m
├── README
├── README.md
├── Solver
│ ├── AXfun.m
│ ├── Arrow.m
│ ├── Atyfun.m
│ ├── HKMcorr.m
│ ├── HKMdirfun.m
│ ├── HKMpred.m
│ ├── HKMrhsfun.m
│ ├── Mexfun
│ │ ├── mexMatvec.c
│ │ ├── mexMatvec.mexw64
│ │ ├── mexProd2.c
│ │ ├── mexProd2.mexw64
│ │ ├── mexProd2nz.c
│ │ ├── mexProd2nz.mexw64
│ │ ├── mexexpand.c
│ │ ├── mexexpand.mexw64
│ │ ├── mexinprod.c
│ │ ├── mexinprod.mexw64
│ │ ├── mexmat.c
│ │ ├── mexmat.mexw64
│ │ ├── mexnnz.c
│ │ ├── mexnnz.mexw64
│ │ ├── mexqops.c
│ │ ├── mexqops.mexw64
│ │ ├── mexschur.c
│ │ ├── mexschur.mexw64
│ │ ├── mexschurfun.c
│ │ ├── mexschurfun.mexw64
│ │ ├── mexskron.c
│ │ ├── mexskron.mexw64
│ │ ├── mexsmat.c
│ │ ├── mexsmat.mexw64
│ │ ├── mexsvec.c
│ │ ├── mexsvec.mexw64
│ │ ├── mextriang.c
│ │ ├── mextriang.mexw64
│ │ ├── mextriangsp.c
│ │ └── mextriangsp.mexw64
│ ├── NTcorr.m
│ ├── NTdirfun.m
│ ├── NTpred.m
│ ├── NTrhsfun.m
│ ├── NTscaling.m
│ ├── Prod2.m
│ ├── Prod3.m
│ ├── SDPT3data_SEDUMIdata.m
│ ├── SDPT3soln_SEDUMIsoln.m
│ ├── SDPvalBounds.m
│ ├── blkbarrier.m
│ ├── blkcholfun.m
│ ├── blkeig.m
│ ├── blktrace.m
│ ├── checkdense.m
│ ├── checkdepconstr.m
│ ├── combine_blk.m
│ ├── convertRcone.m
│ ├── convertcmpsdp.m
│ ├── degeneracy.m
│ ├── detect_lblk.m
│ ├── detect_ublk.m
│ ├── gdcomp.m
│ ├── gpcomp.m
│ ├── infeaspt.m
│ ├── linsysolve.m
│ ├── linsysolvefun.m
│ ├── mybicgstab.m
│ ├── mytime.m
│ ├── nzlist.m
│ ├── ops.m
│ ├── qops.m
│ ├── qprod.m
│ ├── randmat.m
│ ├── read_sdpa.m
│ ├── read_sedumi.m
│ ├── scaling.m
│ ├── schurmat_lblk.m
│ ├── schurmat_qblk.m
│ ├── schurmat_sblk.m
│ ├── skron.m
│ ├── smat.m
│ ├── sortA.m
│ ├── sqlp.m
│ ├── sqlparameters.m
│ ├── sqlpcheckconvg.m
│ ├── sqlpdemo.m
│ ├── sqlpmain.m
│ ├── sqlpmisc.m
│ ├── sqlpsummary.m
│ ├── sqlptermcode.m
│ ├── sqlpu2lblk.m
│ ├── steplength.m
│ ├── svec.m
│ ├── symqmr.m
│ ├── validate.m
│ └── validate_startpoint.m
├── dimacs
│ ├── copo14.mat
│ ├── filter48_socp.mat
│ ├── hamming_7_5_6.mat
│ ├── minphase.mat
│ ├── nql30.mat
│ └── sched_50_50_scaled.mat
├── install_sdpt3.m
├── sdplib
│ ├── arch8.dat-s
│ ├── maxG11.dat-s
│ ├── mcp250-1.dat-s
│ ├── qap9.dat-s
│ ├── qpG11.dat-s
│ ├── ss30.dat-s
│ ├── theta3.dat-s
│ └── truss8.dat-s
└── sdpt3.m
├── sedumi
├── Amul.m
├── COPYING
├── Changelog.txt
├── Contents.m
├── Install.txt
├── PopK.m
├── README.md
├── Readme.txt
├── Version.txt
├── ada_pcg.m
├── adendotd.c
├── adendotd.m
├── adendotd.mexw64
├── adenscale.c
├── adenscale.mexw64
├── asmDxq.m
├── auxfwdpr1.c
├── auxgivens.c
├── blkaux.c
├── blkchol.c
├── blkchol.m
├── blkchol.mexw64
├── blkchol2.c
├── blkmul.c
├── blksdp.h
├── bwblkslv.c
├── bwblkslv.m
├── bwblkslv.mexw64
├── bwblkslv2.c
├── bwdpr1.c
├── bwdpr1.m
├── bwdpr1.mexw64
├── cellK.m
├── checkpars.m
├── cholsplit.c
├── cholsplit.mexw64
├── choltmpsiz.c
├── choltmpsiz.mexw64
├── conversion
│ ├── Contents.m
│ ├── blk2vec.m
│ ├── feascpx.m
│ ├── feasreal.m
│ ├── frompack.m
│ ├── fromsdpa.m
│ ├── getproblem.m
│ ├── prelp.m
│ ├── sdpa2vec.m
│ ├── sdpasplit.m
│ └── writesdp.m
├── ddot.c
├── ddot.m
├── ddot.mexw64
├── deninfac.m
├── dimacserrors.m
├── doc
│ ├── SeDuMi_Guide_105R5.pdf
│ ├── SeDuMi_Guide_105R5.ps
│ ├── SeDuMi_Guide_11.pdf
│ └── SeDuMi_Guide_11.ps
├── dpr1fact.c
├── dpr1fact.m
├── dpr1fact.mexw64
├── eigK.m
├── examples
│ ├── Examples.txt
│ ├── OH_2Pi_STO-6GN9r12g1T2.mat
│ ├── arch0.mat
│ ├── control07.mat
│ ├── nb.mat
│ └── trto3.mat
├── extractA.c
├── extractA.m
├── extractA.mexw64
├── eyeK.m
├── findblks.c
├── findblks.m
├── findblks.mexw64
├── finsymbden.c
├── finsymbden.m
├── finsymbden.mexw64
├── frameit.m
├── fwblkslv.c
├── fwblkslv.m
├── fwblkslv.mexw64
├── fwdpr1.c
├── fwdpr1.m
├── fwdpr1.mexw64
├── getDAt.m
├── getDAtm.m
├── getada.m
├── getada1.c
├── getada1.m
├── getada1.mexw64
├── getada2.c
├── getada2.m
├── getada2.mexw64
├── getada3.c
├── getada3.m
├── getada3.mexw64
├── getdense.m
├── getsymbada.m
├── givens.h
├── givensrot.c
├── givensrot.m
├── givensrot.mexw64
├── incorder.c
├── incorder.m
├── incorder.mexw64
├── install_sedumi.m
├── invcholfac.c
├── invcholfac.m
├── invcholfac.mexw64
├── iswnbr.c
├── iswnbr.m
├── iswnbr.mexw64
├── loopPcg.m
├── mJdetd.c
├── mat.m
├── maxeigK.m
├── maxstep.m
├── minpsdeig.m
├── my_fprintf.m
├── optstep.m
├── ordmmd.c
├── ordmmdmex.c
├── ordmmdmex.m
├── ordmmdmex.mexw64
├── partitA.c
├── partitA.m
├── partitA.mexw64
├── posttransfo.m
├── pretransfo.m
├── psdeig.m
├── psdfactor.m
├── psdframeit.c
├── psdframeit.mexw64
├── psdinvjmul.c
├── psdinvjmul.m
├── psdinvjmul.mexw64
├── psdinvscale.m
├── psdjmul.m
├── psdscale.m
├── qblkmul.c
├── qblkmul.m
├── qblkmul.mexw64
├── qframeit.m
├── qinvjmul.m
├── qjmul.m
├── qrK.c
├── qrK.mexw64
├── quadadd.c
├── quadadd.m
├── quadadd.mexw64
├── reflect.c
├── reflect.h
├── sddir.m
├── sdfactor.m
├── sdinit.m
├── sdmauxCmp.c
├── sdmauxCone.c
├── sdmauxFill.c
├── sdmauxRdot.c
├── sdmauxScalarmul.c
├── sdmauxTriu.c
├── sdmauxTriudot.c
├── sedumi.m
├── sedumi_binary_error.m
├── sortnnz.c
├── sortnnz.m
├── sortnnz.mexw64
├── sparbwslv.m
├── sparfwslv.m
├── spars.m
├── spscale.c
├── sqrtinv.c
├── sqrtinv.m
├── sqrtinv.mexw64
├── stepdif.m
├── symbchol.c
├── symbchol.m
├── symbcholden.m
├── symbfwblk.c
├── symbfwblk.mexw64
├── symfct.c
├── symfctmex.c
├── symfctmex.m
├── symfctmex.mexw64
├── tdet.m
├── triuaux.c
├── triuaux.h
├── triumtriu.m
├── trydif.m
├── updtransfo.m
├── urotorder.c
├── urotorder.m
├── urotorder.mexw64
├── vec.m
├── vecsym.c
├── vecsym.m
├── vecsym.mexw64
├── widelen.m
├── wrapPcg.m
└── wregion.m
├── sets
├── Contents.m
├── complex_lorentz.m
├── convex_poly_coeffs.m
├── exponential.m
├── geo_mean_cone.m
├── hermitian_semidefinite.m
├── lorentz.m
├── nonneg_poly_coeffs.m
├── nonnegative.m
├── norm_ball.m
├── rotated_complex_lorentz.m
├── rotated_lorentz.m
├── semidefinite.m
└── simplex.m
├── shims
├── cvx_glpk.m
├── cvx_gurobi.p
├── cvx_mosek.p
├── cvx_sdpt3.m
└── cvx_sedumi.m
└── structures
├── @cvx
└── structures.m
├── Contents.m
├── cvx_create_structure.m
├── cvx_invert_structure.m
├── cvx_orthog_structure.m
├── cvx_replicate_structure.m
├── cvx_s_banded.m
├── cvx_s_hankel.m
├── cvx_s_hermitian.m
├── cvx_s_sparse.m
├── cvx_s_symmetric.m
├── cvx_s_symmetric_ut.m
└── cvx_s_upper_hankel.m
/GMI_RS.m:
--------------------------------------------------------------------------------
1 | function [pc,pk,GMI,SR]=GMI_RS(Nt,K,H_h,H_m,Pt,M,N0,sigma_e)
2 |
3 |
4 | [A,B,C,D]=cal_ABCD(Nt,K,Pt,N0,H_h,sigma_e);
5 | [X,result]=cal_X(Nt,K,Pt,A,B,C,D);
6 | %result_set(1:length(result))=result;
7 | [p_max]=find_p(K,Pt,A,B,C,D,X);%norm(p_max(:,i,j))^2;
8 | pc=p_max(Nt*K+1:Nt*(K+1));
9 | pk=reshape(p_max(1:Nt*K),Nt,K);
10 | [GMI]=cal_GMI(K,A,B,C,D,p_max);
11 | for m=1:M
12 | [Rs_set]=cal_ach_rate(Nt,K,H_m(:,:,m),N0,p_max);
13 | ach_rate_set(m)=sum(Rs_set);
14 | end
15 |
16 | SR=mean(ach_rate_set);
17 | end
--------------------------------------------------------------------------------
/GMI_SDMA.m:
--------------------------------------------------------------------------------
1 | function [pc,pk,GMI_nc,SR_SDMA]=GMI_SDMA(Nt,K,H_h,H_m,Pt,M,N0,sigma_e)
2 |
3 |
4 | [A,B,C,D]=cal_ABCD(Nt,K,Pt,N0,H_h,sigma_e);
5 | [X_nc,result_nc]=cal_X_no_common(Nt,K,Pt,A,B,C,D);
6 | %result_nc_set(1:length(result_nc))=result_nc;
7 | %[GMI_X_nc]=cal_GMI_withX(K,A,B,C,D,X_nc);
8 | [p_nc]=find_p(K,Pt,A,B,C,D,X_nc);norm(p_nc)^2;
9 | [GMI_nc]=cal_GMI(K,A,B,C,D,p_nc);
10 |
11 | pc=p_nc(Nt*K+1:Nt*(K+1));
12 | pk=reshape(p_nc(1:Nt*K),Nt,K);
13 | for m=1:M
14 | [Rs_set]=cal_ach_rate(Nt,K,H_m(:,:,m),N0,p_nc);
15 | ach_rate_set(m)=sum(Rs_set);
16 | end
17 |
18 | SR_SDMA=mean(ach_rate_set);
19 | end
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | "# Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate"
2 |
--------------------------------------------------------------------------------
/SDMA_ZF.m:
--------------------------------------------------------------------------------
1 | function [P]=SDMA_ZF(P,h1,h2,rho)
2 |
3 |
4 | Nt=length(h1);
5 | % mu=P/2+(1/(2*rho))*(1/norm(h2)^2+1/norm(h1)^2);
6 | % P1_p=mu-(1/rho)*(1/norm(h1)^2);
7 | % P2_p=mu-(1/rho)*(1/norm(h2)^2);
8 | a_max=100000;
9 | a_min=-100000;
10 | while (a_max-a_min)>0.0001
11 | a=(a_max+a_min)/2;
12 | P1_x=max(a-(1/rho)*(1/norm(h1)^2),0);
13 | P2_x=max(a-(1/rho)*(1/norm(h2)^2),0);
14 |
15 | if (P1_x+P2_x)>P
16 | a_max=a;
17 | else
18 | a_min=a;
19 | end
20 |
21 | end
22 |
23 | P=[P1_x;P2_x];
24 | %Rs_x=log2(1+norm(h1)^2*rho*P1_x)+log2(1+norm(h2)^2*rho*P2_x);
25 |
26 |
27 | end
--------------------------------------------------------------------------------
/ZF_noRS.m:
--------------------------------------------------------------------------------
1 | function [pc,pk,SR_ZF]=ZF_noRS(Nt,K,H_h,H_m,Pt,M,N0)
2 | %this function only work in two-user system
3 |
4 | rho=1-abs(H_h(:,1)'/norm(H_h(:,1))*H_h(:,2)/norm(H_h(:,2)))^2;
5 | [P_ZF]=SDMA_ZF(Pt,H_h(:,1),H_h(:,2),rho);
6 | pk_zf=H_h*inv(H_h'*H_h);
7 | for k=1:K
8 | mag(k)=norm(pk_zf(:,k));
9 | end
10 |
11 | ZF_p=[reshape(pk_zf.*(sqrt(P_ZF)./mag')',[],1);zeros(Nt,1)];
12 | %[GMI_ZF]=cal_GMI(K,A,B,C,D,ZF_p);
13 | pc=zeros(1,Nt);
14 | pk=pk_zf.*(sqrt(P_ZF)./mag')';
15 | ZF_p;
16 | for m=1:M
17 | [Rs_set_ZF]=cal_ach_rate(Nt,K,H_m(:,:,m),N0,ZF_p);
18 | ach_rate_mrt_ZF(m)=sum(Rs_set_ZF);
19 | end
20 | SR_ZF=mean(ach_rate_mrt_ZF);
21 | end
--------------------------------------------------------------------------------
/[0]/matlab.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/[0]/matlab.mat
--------------------------------------------------------------------------------
/builtins/@cvx/conj.m:
--------------------------------------------------------------------------------
1 | function y = conj( x )
2 |
3 | %Disciplined convex/geometric programming information for CONJ:
4 | % CONJ(X) imposes no convexity restrictions on its arguments. However,
5 | % since CONJ(X)=X when X is real, it is only useful for complex
6 | % affine expressions.
7 |
8 | y = cvx( x.size_, conj( x.basis_ ) );
9 |
10 | % Copyright 2005-2016 CVX Research, Inc.
11 | % See the file LICENSE.txt for full copyright information.
12 | % The command 'cvx_where' will show where this file is located.
13 |
--------------------------------------------------------------------------------
/builtins/@cvx/disp.m:
--------------------------------------------------------------------------------
1 | function disp( x, prefix )
2 | if nargin < 2,
3 | prefix = '';
4 | end
5 | disp( [ prefix, 'cvx ', cvx_class( x, true, true, true ), ' expression (', type( x ), ')' ] );
6 | dual = cvx_getdual( x );
7 | if ~isempty( dual ),
8 | disp( [ prefix, ' tied to dual variable: ', dual.subs ] );
9 | end
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/builtins/@cvx/end.m:
--------------------------------------------------------------------------------
1 | function y = end( x, k, n )
2 |
3 | %Disciplined convex/geometric programming information for END:
4 | % The use of END as an array subscript (e.g., X(:,end)) is identical
5 | % with CVX variables as it is for numeric vectors and arrays.
6 |
7 | sz = size( x );
8 | nz = length( sz );
9 | if k > nz,
10 | y = 1;
11 | elseif k < n || nz <= n,
12 | y = sz( k );
13 | else
14 | y = prod( sz( k : end ) );
15 | end
16 |
17 | % Copyright 2005-2016 CVX Research, Inc.
18 | % See the file LICENSE.txt for full copyright information.
19 | % The command 'cvx_where' will show where this file is located.
20 |
--------------------------------------------------------------------------------
/builtins/@cvx/full.m:
--------------------------------------------------------------------------------
1 | function z = full( x )
2 |
3 | % Disciplined convex/geometric programming information for FULL (+):
4 | % This is effectively a "no-op", and can be used in DCPs and DGPs
5 | % without restrictions.
6 |
7 | z = x;
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/builtins/@cvx/horzcat.m:
--------------------------------------------------------------------------------
1 | function y = horzcat( varargin )
2 | y = cat( 2, varargin{:} );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/builtins/@cvx/imag.m:
--------------------------------------------------------------------------------
1 | function y = imag( x )
2 |
3 | %Disciplined convex/geometric programming information for IMAG:
4 | % IMAG(X) may be freely applied to any CVX expression. Of course,
5 | % IMAG(X)=0 for all real expressions (including convex, concave,
6 | % log-convex, and log-concave), so it is primarily useful in the
7 | % complex affine case.
8 |
9 | y = cvx( x.size_, imag( x.basis_ ) );
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/builtins/@cvx/isreal.m:
--------------------------------------------------------------------------------
1 | function y = isreal( x, full )
2 |
3 | %Disciplined convex/geometric programming information for ISREAL:
4 | % ISREAL(X) may be freely applied to any CVX expression. It will
5 | % return TRUE for all real affine, convex, concave, log-convex,
6 | % and log-concave expressions, and FALSE for complex affine
7 | % expressions.
8 |
9 | y = x.basis_;
10 | if nargin > 1 && full,
11 | y = any( imag( y ), 1 );
12 | else
13 | y = isreal( x.basis_ ) | nnz(imag(x.basis_)) == 0;
14 | end
15 |
16 | % Copyright 2005-2016 CVX Research, Inc.
17 | % See the file LICENSE.txt for full copyright information.
18 | % The command 'cvx_where' will show where this file is located.
19 |
--------------------------------------------------------------------------------
/builtins/@cvx/mpower.m:
--------------------------------------------------------------------------------
1 | function z = mpower( x, y )
2 |
3 | % Disciplined convex/geometric programming information for MPOWER (^):
4 | % The CVX version of the matrix power function Z=X.^Y supports only
5 | % the case where X and Y are scalars. In such instances, the rules
6 | % are identical to those outlined in the help for CVX/POWER.
7 |
8 | if length( x ) == 1 && length( y ) == 1,
9 | z = power( x, y );
10 | else
11 | error( 'Disciplined convex programming error:\n Matrix powers not permitted.', 1 ); %#ok
12 | end
13 |
14 | % Copyright 2005-2016 CVX Research, Inc.
15 | % See the file LICENSE.txt for full copyright information.
16 | % The command 'cvx_where' will show where this file is located.
17 |
--------------------------------------------------------------------------------
/builtins/@cvx/ne.m:
--------------------------------------------------------------------------------
1 | function a = ne( x, y )
2 |
3 | % Disciplined convex/geometric programming information for NE (~=):
4 | % Not-equal constraints violate both the DCP and DGP rulesets. Thus
5 | % not-equal expressions may only appear in CVX models when both
6 | % sides are constant.
7 |
8 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '~=' );
9 | if nargout, a = b; end
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/builtins/@cvx/real.m:
--------------------------------------------------------------------------------
1 | function y = real( x )
2 |
3 | % Disciplined convex/geometric programming information for REAL:
4 | % REAL(X) may be freely applied to any CVX expression. However,
5 | % since REAL(X)=X for all real expressions (including convex,
6 | % concave, log-convex, and log-concave), it is only useful in
7 | % the complex affine case.
8 |
9 | y = cvx( x.size_, real( x.basis_ ) );
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/builtins/@cvx/subsref.m:
--------------------------------------------------------------------------------
1 | function x = subsref( x, S )
2 |
3 | % Disciplined convex/geometric programming information for SUBSREF:
4 | % The use of subscripts to extract elements or "slices" of any CVX
5 | % variable is identical to their use with numeric arrays. All
6 | % conventions are preserved, including the colon ':' and 'end'.
7 |
8 | narginchk(2,2);
9 |
10 | try
11 | ndxs = builtin( 'subsref', reshape( 1 : prod( x.size_ ), x.size_ ), S );
12 | catch errmsg
13 | error( errmsg.identifier, errmsg.message );
14 | end
15 |
16 | x = cvx( size( ndxs ), x.basis_( :, ndxs ) );
17 |
18 | % Copyright 2005-2016 CVX Research, Inc.
19 | % See the file LICENSE.txt for full copyright information.
20 | % The command 'cvx_where' will show where this file is located.
21 |
--------------------------------------------------------------------------------
/builtins/@cvx/uplus.m:
--------------------------------------------------------------------------------
1 | function z = uplus( x )
2 |
3 | % Disciplined convex/geometric programming information for UPLUS (+):
4 | % Unary plus may be used in DCPs and DGPs without restrictions.
5 |
6 | z = x;
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/builtins/@cvx/var.m:
--------------------------------------------------------------------------------
1 | function y = var( varargin )
2 |
3 | %STD Internal cvx version.
4 |
5 | y = square_pos( std( varargin{:} ) );
6 |
7 | % Copyright 2005-2016 CVX Research, Inc.
8 | % See the file LICENSE.txt for full copyright information.
9 | % The command 'cvx_where' will show where this file is located.
10 |
--------------------------------------------------------------------------------
/builtins/@cvx/vertcat.m:
--------------------------------------------------------------------------------
1 | function y = vertcat( varargin )
2 |
3 | % Disciplined convex/geometric programming information for VERTCAT:
4 | % VERTCAT imposes no convexity restrictions on its arguments.
5 |
6 | y = cat( 1, varargin{:} );
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/builtins/@cvxcnst/ne.m:
--------------------------------------------------------------------------------
1 | function a = ne( x, y )
2 |
3 | % Disciplined convex/geometric programming information for NE (~=):
4 | % Not-equal constraints violate both the DCP and DGP rulesets. Thus
5 | % not-equal expressions may only appear in CVX models when both
6 | % sides are constant.
7 |
8 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '~=' );
9 | if nargout, a = b; end
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/cal_GMI.m:
--------------------------------------------------------------------------------
1 | function [GMI]=cal_GMI(M,A,B,C,D,p)
2 |
3 |
4 | for k=1:M
5 | GMI_p(k)=log2((p'*C(:,:,k)*p)/(p'*D(:,:,k)*p));
6 | GMI_c(k)=log2((p'*A(:,:,k)*p)/(p'*B(:,:,k)*p));
7 | end
8 |
9 | GMI=sum(GMI_p)+min(GMI_c);
10 |
11 | end
--------------------------------------------------------------------------------
/cal_ach_rate.m:
--------------------------------------------------------------------------------
1 |
2 |
3 | function [Rs_set]=cal_ach_rate(Nt,M,h,N0,p)
4 |
5 |
6 | pp=reshape(p,[Nt,M+1]);%p=m=Nt X (M+1)vector
7 |
8 |
9 | for k=1:M
10 | inter(k)=0;
11 | for i=1:M
12 | if i~=k
13 | inter(k)=inter(k)+abs(h(:,k)'*pp(:,i))^2;
14 | end
15 | end
16 | R_ach(k)= log2(1+abs(h(:,k)'*pp(:,k))^2/(inter(k)+N0));
17 | Rc_ach(k)=log2(1+abs(h(:,k)'*pp(:,M+1))^2/(inter(k)+abs(h(:,k)'*pp(:,k))^2+N0));
18 |
19 | end
20 |
21 | R_ach(M+1)=min(Rc_ach);
22 | Rs_set=R_ach.';
23 | end
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/commands/cvx_clear.m:
--------------------------------------------------------------------------------
1 | % CVX_CLEAR Clears all active CVX data.
2 | % CVX_CLEAR clears the current CVX model in progress. This is useful if, for
3 | % example, you have made an error typing in your model and wish to start
4 | % over. Typing this before entering another CVX_BEGIN again avoids the
5 | % warning message that occurs if CVX_BEGIN detects a model in progress.
6 |
7 | prob = evalin( 'caller', 'cvx_problem', '[]' );
8 | if isa( prob, 'cvxprob' ),
9 | evalin( 'caller', 'pop( cvx_problem, ''clear'' )' );
10 | end
11 | % cvx_clearpath( 1 );
12 |
13 | % Copyright 2005-2016 CVX Research, Inc.
14 | % See the file LICENSE.txt for full copyright information.
15 | % The command 'cvx_where' will show where this file is located.
16 |
--------------------------------------------------------------------------------
/cvx_license.p:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/cvx_license.p
--------------------------------------------------------------------------------
/doc/CVX.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/CVX.pdf
--------------------------------------------------------------------------------
/doc/_images/envelope.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_images/envelope.pdf
--------------------------------------------------------------------------------
/doc/_images/tradeoff.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_images/tradeoff.pdf
--------------------------------------------------------------------------------
/doc/_sources/index.txt:
--------------------------------------------------------------------------------
1 | .. CVX documentation master file, created by
2 | sphinx-quickstart on Tue Jun 26 20:00:08 2012.
3 | You can adapt this file completely to your liking, but it should at least
4 | contain the root `toctree` directive.
5 |
6 | ================
7 | CVX Users' Guide
8 | ================
9 |
10 | .. toctree::
11 | intro
12 | install
13 | quickstart
14 | basics
15 | dcp
16 | sdp
17 | gp
18 | solver
19 | funcref
20 | support
21 | advanced
22 | license
23 | citing
24 | credits
25 | gurobi
26 | mosek
27 |
28 | .. _CVX Support: http://support.cvxr.com/
29 | .. _CVX Sales: mailto:sales@cvxr.com
30 | .. _Licensing: http://cvxr.com/cvx/licensing
31 | .. _Academic License Request: http://cvxr.com/cvx/academic
32 |
33 |
--------------------------------------------------------------------------------
/doc/_static/ajax-loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/ajax-loader.gif
--------------------------------------------------------------------------------
/doc/_static/comment-bright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/comment-bright.png
--------------------------------------------------------------------------------
/doc/_static/comment-close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/comment-close.png
--------------------------------------------------------------------------------
/doc/_static/comment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/comment.png
--------------------------------------------------------------------------------
/doc/_static/cvxrlogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/cvxrlogo.png
--------------------------------------------------------------------------------
/doc/_static/down-pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/down-pressed.png
--------------------------------------------------------------------------------
/doc/_static/down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/down.png
--------------------------------------------------------------------------------
/doc/_static/file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/file.png
--------------------------------------------------------------------------------
/doc/_static/icon-deprecated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/icon-deprecated.png
--------------------------------------------------------------------------------
/doc/_static/icon-note.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/icon-note.png
--------------------------------------------------------------------------------
/doc/_static/icon-seealso.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/icon-seealso.png
--------------------------------------------------------------------------------
/doc/_static/icon-todo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/icon-todo.png
--------------------------------------------------------------------------------
/doc/_static/icon-warning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/icon-warning.png
--------------------------------------------------------------------------------
/doc/_static/minus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/minus.png
--------------------------------------------------------------------------------
/doc/_static/plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/plus.png
--------------------------------------------------------------------------------
/doc/_static/up-pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/up-pressed.png
--------------------------------------------------------------------------------
/doc/_static/up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/_static/up.png
--------------------------------------------------------------------------------
/doc/objects.inv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/doc/objects.inv
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_beamwidth__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_beamwidth__01.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_beamwidth__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_beamwidth__02.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_beamwidth__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_beamwidth__03.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_sidelobe__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_sidelobe__01.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_sidelobe__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_sidelobe__02.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_sidelobe__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_sidelobe__03.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_therm_noise__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_therm_noise__01.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_therm_noise__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_therm_noise__02.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/ant_array_min_therm_noise__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/ant_array_min_therm_noise__03.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/broadband_array_min_sidelobe__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/broadband_array_min_sidelobe__01.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/broadband_array_min_sidelobe__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/broadband_array_min_sidelobe__02.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/broadband_array_min_sidelobe__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/broadband_array_min_sidelobe__03.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/line_array_spec_fact__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/line_array_spec_fact__01.png
--------------------------------------------------------------------------------
/examples/antenna_array_design/html/line_array_spec_fact__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/antenna_array_design/html/line_array_spec_fact__02.png
--------------------------------------------------------------------------------
/examples/bullet.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/bullet.gif
--------------------------------------------------------------------------------
/examples/circuit_design/html/LC_osc_design__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/LC_osc_design__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/clock_mesh__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/clock_mesh__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/clock_mesh__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/clock_mesh__02.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/clock_mesh__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/clock_mesh__03.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/dig_ckt_sizing__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/dig_ckt_sizing__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/elmore_straight_wire__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/elmore_straight_wire__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/elmore_straight_wire__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/elmore_straight_wire__02.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/inverter_chain_sizing__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/inverter_chain_sizing__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/simple_NAND2_gate_design__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/simple_NAND2_gate_design__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__02.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__03.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__04.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__05.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__06.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__06.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__07.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__07.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__08.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__08.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__09.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__09.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__10.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__11.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__12.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/tristate_bus_sizing__13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/tristate_bus_sizing__13.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_driver_sizing__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_driver_sizing__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_driver_sizing__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_driver_sizing__02.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_driver_sizing__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_driver_sizing__03.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing__02.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing__03.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing__04.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing__05.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing__06.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing__06.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__02.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__03.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__04.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__05.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__06.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__06.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__07.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__07.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__08.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__08.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_spacing__09.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_spacing__09.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_topology__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_topology__01.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_topology__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_topology__02.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_topology__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_topology__03.png
--------------------------------------------------------------------------------
/examples/circuit_design/html/wire_sizing_topology__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/circuit_design/html/wire_sizing_topology__04.png
--------------------------------------------------------------------------------
/examples/circuit_design/simple_step.m:
--------------------------------------------------------------------------------
1 | % Computes the step response of a linear system
2 |
3 | function X = simple_step(A,B,DT,N)
4 | n = size(A,1);
5 | Ad = expm( full( A * DT ) );
6 | Bd = ( Ad - eye(n) ) * B;
7 | Bd = A \ Bd;
8 | X = zeros(n,N);
9 | for k = 2 : N,
10 | X(:,k) = Ad*X(:,k-1)+Bd;
11 | end
12 |
13 |
14 |
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/chebyshev_center.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/chebyshev_center.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/chebyshev_center_2D.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/chebyshev_center_2D.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_27.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_27.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_3.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_3.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_38.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_38.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_5.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/ex_4_5.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/fastest_mixing_MC.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/fastest_mixing_MC.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/html/cantilever_beam__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/html/cantilever_beam__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/html/cantilever_beam_rec__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/html/cantilever_beam_rec__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/html/chebyshev_center_2D__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/html/chebyshev_center_2D__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch04_cvx_opt_probs/html/logopt_investment__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch04_cvx_opt_probs/html/logopt_investment__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/Contents.m:
--------------------------------------------------------------------------------
1 | % Chapter 5: Duality
2 | %
3 | % qcqp.m - Section 5.2.4: Solves a simple QCQP
4 | % matrix_games.m - Section 5.2.5: Mixed strategies for matrix games
5 | % matrix_games_LP.m - Section 5.2.5: Mixed strategies for matrix games (LP formulation)
6 | % norm_approx.m - Examples 5.6,5.8: An l_p norm approximation problem
7 | % ex_5_19.m - Exercise 5.19c: Markovitz portfolio optimization w/ diversification constraint
8 | % ex_5_1.m - Exercise 5.1d: Sensitivity analysis for a simple QCQP
9 | % ex_5_33.m - Exercise 5.33: Parametrized l1-norm approximation
10 | % ex_5_39.m - Exercise 5.39: SDP relaxations of the two-way partitioning problem
11 | help Contents
12 |
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/ex_5_1.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/ex_5_1.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/ex_5_19.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/ex_5_19.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/ex_5_33.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/ex_5_33.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/ex_5_39.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/ex_5_39.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/html/ex_5_1__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/html/ex_5_1__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/html/ex_5_33__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/html/ex_5_33__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/matrix_games.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/matrix_games.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/matrix_games_LP.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/matrix_games_LP.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/norm_approx.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/norm_approx.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch05_duality/qcqp.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch05_duality/qcqp.m
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/basispursuit__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/basispursuit__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/basispursuit__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/basispursuit__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/basispursuit__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/basispursuit__03.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/convex_interpolation__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/convex_interpolation__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_15__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_15__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_19__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_19__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_20__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_20__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_5__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_5__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__03.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__04.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__05.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__06.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_6__06.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/fig6_9__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/fig6_9__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/penalty_comp_cvx__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/penalty_comp_cvx__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/preference_regions__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/preference_regions__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/preference_regions__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/preference_regions__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/regressor_cvx__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/regressor_cvx__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/smoothrec_cvx__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/smoothrec_cvx__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/smoothrec_cvx__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/smoothrec_cvx__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/smoothrec_cvx__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/smoothrec_cvx__03.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__03.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__04.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/tv_cvx__05.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch06_approx_fitting/html/wcrobls__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch06_approx_fitting/html/wcrobls__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/cher.m:
--------------------------------------------------------------------------------
1 | function prob = cher( A, b, Sigma );
2 |
3 | % Computes Chernoff upper bounds on probability
4 | %
5 | % Computes a bound on the probability that a Gaussian random vector
6 | % N(0,Sigma) satisfies A x <= b, by solving a QP
7 | %
8 |
9 | [ m, n ] = size( A );
10 | cvx_begin quiet
11 | variable u( m )
12 | minimize( b' * u + 0.5 * sum_square( chol( Sigma ) * A' * u ) )
13 | subject to
14 | u >= 0;
15 | cvx_end
16 | prob = exp( cvx_optval );
17 |
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/detector2__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/detector2__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/expdesign__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/expdesign__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/expdesign__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/expdesign__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/expdesign__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/expdesign__03.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/expdesign__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/expdesign__04.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/logistics__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/logistics__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/logistics_gp__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/logistics_gp__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/maxent__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/maxent__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/maxent__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/maxent__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/probbounds__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/probbounds__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/probbounds__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/probbounds__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/html/probbounds__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch07_statistical_estim/html/probbounds__03.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch07_statistical_estim/montecarlo.m:
--------------------------------------------------------------------------------
1 | function prob = montecarlo(A,b,Sigma,notrials);
2 |
3 | % Probability estimate using Monte Carlo methods
4 | %
5 | % Estimates the probability that a random vector x in R2
6 | % with mean zero and covariance Sigma satisfies Ax <= b,
7 | % based on 100 * notrials trials. Sigma must be PSD.
8 |
9 | m = size(A,1);
10 |
11 | R = chol(Sigma); % Y = R^{-T}X has covariance I
12 | X = R'*randn(2,notrials);
13 | prob = length(find(sum(A*X - b(:,ones(1,notrials)) < 0) == m))/notrials;
14 |
15 | for i=1:99
16 | X = R'*randn(2,notrials);
17 | prob = 0.5*(prob + ...
18 | length(find(sum(A*X - b(:,ones(1,notrials)) < 0) == m))/notrials);
19 | end;
20 |
21 |
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/eucl_dist_poly_2D__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/eucl_dist_poly_2D__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/floor_plan__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/floor_plan__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/floor_plan_graphs__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/floor_plan_graphs__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/linear_discr__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/linear_discr__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/max_vol_ellip_in_polyhedra__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/max_vol_ellip_in_polyhedra__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/min_vol_elp_finite_set__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/min_vol_elp_finite_set__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/min_vol_union_ellip__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/min_vol_union_ellip__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/placement_lin__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/placement_lin__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/placement_lin__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/placement_lin__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/placement_quad__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/placement_quad__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/placement_quad__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/placement_quad__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/placement_quar__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/placement_quar__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/placement_quar__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/placement_quar__02.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/poly3_discr__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/poly3_discr__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/poly4_discr__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/poly4_discr__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/quad_discr__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/quad_discr__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/robust_lin_discr__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/robust_lin_discr__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/separate_ell_2D__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/separate_ell_2D__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/separate_poly_2D__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/separate_poly_2D__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/svm_1__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/svm_1__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/svm_2__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/svm_2__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch08_geometric_probs/html/test_floorplan__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/cvxbook/Ch08_geometric_probs/html/test_floorplan__01.png
--------------------------------------------------------------------------------
/examples/cvxbook/Ch11_intpt_methods/Contents.m:
--------------------------------------------------------------------------------
1 | % Chapter 11: Interior-point methods
2 | %
3 | % log_utility_flow.m - Section 11.8.4: Network rate optimization
4 | help Contents
5 |
--------------------------------------------------------------------------------
/examples/cvxbook/Contents.m:
--------------------------------------------------------------------------------
1 | % Figures, examples, and exercises from the book Convex Optimization
2 | %
3 | % Ch04_cvx_opt_probs/ - Chapter 4: Convex optimization problems
4 | % Ch05_duality/ - Chapter 5: Duality
5 | % Ch06_approx_fitting/ - Chapter 6: Approximation and fitting
6 | % Ch07_statistical_estim/ - Chapter 7: Statistical estimation
7 | % Ch08_geometric_probs/ - Chapter 8: Geometric problems
8 | % Ch11_intpt_methods/ - Chapter 11: Interior-point methods
9 | help Contents
10 |
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__03.png
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__04.png
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__05.png
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__06.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__06.png
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__07.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__07.png
--------------------------------------------------------------------------------
/examples/filter_design/html/equalizer_design__08.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/equalizer_design__08.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_chebychev_design__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_chebychev_design__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_chebychev_design__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_chebychev_design__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_max_atten__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_max_atten__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_max_atten__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_max_atten__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_min_order__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_min_order__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_min_order__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_min_order__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_min_ripple__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_min_ripple__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_min_ripple__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_min_ripple__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_min_trans__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_min_trans__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_lin_phase_lowpass_min_trans__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_lin_phase_lowpass_min_trans__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_mag_design_lowpass_max_atten__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_mag_design_lowpass_max_atten__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_mag_design_lowpass_max_atten__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_mag_design_lowpass_max_atten__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_mag_design_lowpass_min_order__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_mag_design_lowpass_min_order__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/fir_mag_design_lowpass_min_order__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/fir_mag_design_lowpass_min_order__02.png
--------------------------------------------------------------------------------
/examples/filter_design/html/iir_mag_design_bandpass_max_atten__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/iir_mag_design_bandpass_max_atten__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/iir_mag_design_lowpass_max_atten__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/iir_mag_design_lowpass_max_atten__01.png
--------------------------------------------------------------------------------
/examples/filter_design/html/one_over_f_filter__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/filter_design/html/one_over_f_filter__01.png
--------------------------------------------------------------------------------
/examples/gp_tutorial/html/basic_odp__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/gp_tutorial/html/basic_odp__01.png
--------------------------------------------------------------------------------
/examples/gp_tutorial/html/beta_min_odp__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/gp_tutorial/html/beta_min_odp__01.png
--------------------------------------------------------------------------------
/examples/gp_tutorial/html/elmore_interconnect__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/gp_tutorial/html/elmore_interconnect__01.png
--------------------------------------------------------------------------------
/examples/gp_tutorial/html/floor_planning__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/gp_tutorial/html/floor_planning__01.png
--------------------------------------------------------------------------------
/examples/gp_tutorial/html/max_volume_box__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/gp_tutorial/html/max_volume_box__01.png
--------------------------------------------------------------------------------
/examples/gp_tutorial/html/simple_dig_ckt_sizing__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/gp_tutorial/html/simple_dig_ckt_sizing__01.png
--------------------------------------------------------------------------------
/examples/gp_tutorial/html/simple_dig_ckt_sizing_vect__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/gp_tutorial/html/simple_dig_ckt_sizing_vect__01.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/cut_grid_example__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/cut_grid_example__01.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/cut_grid_example__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/cut_grid_example__02.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/cut_grid_example__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/cut_grid_example__03.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/cut_grid_example__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/cut_grid_example__04.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/cut_grid_example__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/cut_grid_example__05.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/larger_example__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/larger_example__01.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/larger_example__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/larger_example__02.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/larger_example__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/larger_example__03.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/larger_example__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/larger_example__04.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/larger_example__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/larger_example__05.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/larger_example__06.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/larger_example__06.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/small_example__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/small_example__01.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/small_example__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/small_example__02.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/small_example__03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/small_example__03.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/small_example__04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/small_example__04.png
--------------------------------------------------------------------------------
/examples/graph_laplacian/html/small_example__05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/graph_laplacian/html/small_example__05.png
--------------------------------------------------------------------------------
/examples/html/nonneg_matrix_fact__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/html/nonneg_matrix_fact__01.png
--------------------------------------------------------------------------------
/examples/html/quickstart__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/html/quickstart__01.png
--------------------------------------------------------------------------------
/examples/html/regularized_norm_tradeoff__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/html/regularized_norm_tradeoff__01.png
--------------------------------------------------------------------------------
/examples/html/regularized_norm_tradeoff__02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/html/regularized_norm_tradeoff__02.png
--------------------------------------------------------------------------------
/examples/log_exp/Contents.m:
--------------------------------------------------------------------------------
1 | % Examples employing logarithms, exponentials, and entropy functions
2 | %
3 | % max_entropy.m - Entropy maximization
4 | % sparse_covariance_est.m - Sparse covariance estimation for Gaussian variables
5 | % sparse_covariance_est_tradeoff.m - Sparse covariance estimation for Gaussian variables
6 | % weighted_analytic_center.m - Weighted analytic center of a set of linear inequalities
7 | help Contents
8 |
--------------------------------------------------------------------------------
/examples/log_exp/html/sparse_covariance_est__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/log_exp/html/sparse_covariance_est__01.png
--------------------------------------------------------------------------------
/examples/log_exp/html/sparse_covariance_est_tradeoff__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/log_exp/html/sparse_covariance_est_tradeoff__01.png
--------------------------------------------------------------------------------
/examples/log_exp/max_entropy.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/log_exp/max_entropy.m
--------------------------------------------------------------------------------
/examples/minus.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/minus.gif
--------------------------------------------------------------------------------
/examples/plus.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/plus.gif
--------------------------------------------------------------------------------
/examples/simple_LP.m:
--------------------------------------------------------------------------------
1 | % Builds and solves a simple linear program
2 |
3 | echo on
4 |
5 | n = 100;
6 | A = randn(0.5*n,n);
7 | b = randn(0.5*n,1);
8 | c = randn(n,1);
9 | d = randn;
10 | cvx_begin
11 | variable x(n)
12 | dual variables y z
13 | minimize( c' * x + d )
14 | subject to
15 | y : A * x == b;
16 | z : x >= 0;
17 | cvx_end
18 |
19 | echo off
20 |
21 |
--------------------------------------------------------------------------------
/examples/simple_LP2.m:
--------------------------------------------------------------------------------
1 | % Builds and solves a simple inequality-constrained linear program
2 |
3 | echo on
4 |
5 | n = 10;
6 | A = randn(2*n,n);
7 | b = randn(2*n,1);
8 | c = randn(n,1);
9 | d = randn;
10 | cvx_begin
11 | variable x(n)
12 | dual variables y z
13 | minimize( c' * x + d )
14 | subject to
15 | y : A * x <= b;
16 | cvx_end
17 |
18 | echo off
19 |
20 |
--------------------------------------------------------------------------------
/examples/simple_LS.m:
--------------------------------------------------------------------------------
1 | % Builds and solves a simple least-squares problem using cvx
2 |
3 | echo on
4 |
5 | n = 100;
6 | A = randn(2*n,n);
7 | b = randn(2*n,1);
8 | cvx_begin
9 | variable x(n)
10 | minimize( norm( A*x-b ) )
11 | cvx_end
12 |
13 | echo off
14 |
--------------------------------------------------------------------------------
/examples/sparse_heuristics/Contents.m:
--------------------------------------------------------------------------------
1 | % Sparse solution heuristics
2 | %
3 | % sparse_solution.m - Computing a sparse solution of a set of linear inequalities
4 | % sparse_infeas_dual.m - Detecting a small subset of infeasible linear inequalities
5 | % sparse_infeas.m - Finding a point that satisfies many linear inequalities
6 | help Contents
7 |
--------------------------------------------------------------------------------
/examples/sparse_heuristics/html/sparse_solution__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/sparse_heuristics/html/sparse_solution__01.png
--------------------------------------------------------------------------------
/examples/sparse_heuristics/sparse_solution.m:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/sparse_heuristics/sparse_solution.m
--------------------------------------------------------------------------------
/examples/time_series_analysis/Contents.m:
--------------------------------------------------------------------------------
1 | % Example from l1 Trend Filtering
2 | %
3 | % l1_trend_filter_snp500.m - l1 trend filtering
4 | % snp500.txt - (no title)
5 | help Contents
6 |
--------------------------------------------------------------------------------
/examples/time_series_analysis/html/l1_trend_filter_snp500__01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/examples/time_series_analysis/html/l1_trend_filter_snp500__01.png
--------------------------------------------------------------------------------
/find_p.m:
--------------------------------------------------------------------------------
1 | function [p_max]=find_p(M,Pt,A,B,C,D,X)
2 |
3 | %[U,W,Z] = svds(X);%V=U*W*Z'
4 |
5 | %U(:,1);%eigenvector for largest eigen value
6 | %p_e=U(:,1)*sqrt(trace(X));
7 |
8 | [U,W,Z] = svds(X);%V=U*W*Z'
9 | n=length(W);
10 | obj_max=-100;
11 | for m=1:10000
12 | r=sqrt(1/2)*(randn(n,1)+1i*randn(n,1));%sqrt(var/2)*(randn(1,N)+1i*randn(1,N))
13 | p1=U*sqrt(W)*r;
14 | p=sqrt(Pt)*p1/sqrt(p1'*p1);
15 | obj(m)=cal_GMI(M,A,B,C,D,p);
16 | if obj(m)>=obj_max
17 | obj_max=obj(m);
18 | p_max=p;
19 | end
20 | end
21 |
22 | end
--------------------------------------------------------------------------------
/functions/@cvx/inv_pos.m:
--------------------------------------------------------------------------------
1 | function y = inv_pos( x )
2 |
3 | %INV_POS Internal cvx version.
4 |
5 | y = pow_cvx( x, -1, 'pow_p' );
6 |
7 | % Copyright 2005-2016 CVX Research, Inc.
8 | % See the file LICENSE.txt for full copyright information.
9 | % The command 'cvx_where' will show where this file is located.
10 |
11 |
--------------------------------------------------------------------------------
/functions/@cvx/pow_abs.m:
--------------------------------------------------------------------------------
1 | function y = pow_abs( x, p )
2 |
3 | %POW_ABS Internal cvx version.
4 |
5 | narginchk(2,2);
6 | if ~cvx_isconstant( p ),
7 | error( 'Second argument must be constant.' );
8 | elseif ~isreal( p ),
9 | error( 'Second argument must be real.' );
10 | elseif any( cvx_constant( p(:) ) < 1 ),
11 | error( 'Second argument must be greater than or equal to one.' );
12 | end
13 | y = pow_cvx( x, p, 'pow_abs' );
14 |
15 | % Copyright 2005-2016 CVX Research, Inc.
16 | % See the file LICENSE.txt for full copyright information.
17 | % The command 'cvx_where' will show where this file is located.
18 |
--------------------------------------------------------------------------------
/functions/@cvx/pow_p.m:
--------------------------------------------------------------------------------
1 | function y = pow_p( x, p )
2 |
3 | %POW_P Internal cvx version.
4 |
5 | narginchk(2,2);
6 | y = pow_cvx( x, p, 'pow_p' );
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/functions/@cvx/pow_pos.m:
--------------------------------------------------------------------------------
1 | function y = pow_pos( x, p )
2 |
3 | %POW_POS Internal cvx version.
4 |
5 | narginchk(2,2);
6 | if ~cvx_isconstant( p ),
7 | error( 'Second argument must be constant.' );
8 | elseif ~isreal( p ),
9 | error( 'Second argument must be real.' );
10 | end
11 | p = cvx_constant( p );
12 | if nnz( p < 1 ),
13 | error( 'Second argument must be greater than or equal to 1.\n(Use POW_P for exponents less than 1.)', 1 ); %#ok
14 | end
15 | y = pow_cvx( x, p, 'pow_pos' );
16 |
17 | % Copyright 2005-2016 CVX Research, Inc.
18 | % See the file LICENSE.txt for full copyright information.
19 | % The command 'cvx_where' will show where this file is located.
20 |
21 |
--------------------------------------------------------------------------------
/functions/@cvx/quad_pos_over_lin.m:
--------------------------------------------------------------------------------
1 | function cvx_optval = quad_pos_over_lin( x, y, varargin ) %#ok
2 |
3 | %QUAD_POS_OVER_LIN Internal cvx version.
4 |
5 | narginchk(2,3);
6 | if ~isreal( x ),
7 | error( 'First input must be real.' );
8 | end
9 | x2 = [];
10 | cvx_begin
11 | variable x2( size(x) )
12 | minimize quad_over_lin( x2, y, varargin{:} );
13 | x2 >= x; %#ok
14 | cvx_end
15 |
16 | % Copyright 2005-2016 CVX Research, Inc.
17 | % See the file LICENSE.txt for full copyright information.
18 | % The command 'cvx_where' will show where this file is located.
19 |
20 |
--------------------------------------------------------------------------------
/functions/@cvx/sigma_max.m:
--------------------------------------------------------------------------------
1 | function cvx_optval = sigma_max( x )
2 |
3 | %SIGMA_MAX Internal cvx version.
4 |
5 | narginchk(1,1);
6 | if ndims( x ) > 2, %#ok
7 | error( 'lambda_max is not defined for N-D arrays.' );
8 | elseif ~cvx_isaffine( x ),
9 | error( 'Input must be affine.' );
10 | end
11 |
12 | %
13 | % Construct problem
14 | %
15 |
16 | [ m, n ] = size( x );
17 | cvx_optval = lambda_max( [ zeros( m, m ), x ; x', zeros( n, n ) ] );
18 |
19 | % Copyright 2005-2016 CVX Research, Inc.
20 | % See the file LICENSE.txt for full copyright information.
21 | % The command 'cvx_where' will show where this file is located.
22 |
--------------------------------------------------------------------------------
/functions/@cvx/square_abs.m:
--------------------------------------------------------------------------------
1 | function cvx_optval = square_abs( x )
2 |
3 | %SQUARE_ABS Internal cvx version.
4 |
5 | narginchk(1,1);
6 | cvx_optval = pow_abs( x, 2 );
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/functions/@cvx/square_pos.m:
--------------------------------------------------------------------------------
1 | function cvx_optval = square_pos( x )
2 |
3 | %SQUARE_POS Internal cvx version.
4 |
5 | narginchk(1,1);
6 | cvx_optval = pow_pos( x, 2 );
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/functions/@cvx/sum_log.m:
--------------------------------------------------------------------------------
1 | function y = sum_log( x, dim )
2 |
3 | %SUM_LOG Internal CVX version.
4 |
5 | cvx_expert_check( 'sum_log', x );
6 | narginchk(1,2);
7 | if nargin == 2,
8 | y = size( x, dim ) * log( geo_mean( x, dim ) );
9 | else
10 | y = length( x ) * log( geo_mean( x ) );
11 | end
12 |
13 | % Copyright 2005-2016 CVX Research, Inc.
14 | % See the file LICENSE.txt for full copyright information.
15 | % The command 'cvx_where' will show where this file is located.
16 |
--------------------------------------------------------------------------------
/functions/@cvx/sum_square.m:
--------------------------------------------------------------------------------
1 | function cvx_optval = sum_square( x, varargin )
2 |
3 | %SUM_SQUARE Internal cvx version.
4 |
5 | narginchk(1,2);
6 | if ~isreal( x ),
7 | error( 'Disciplined convex programming error:\n The argument to SUM_SQUARE must be real and affine.', 1 ); %#ok
8 | end
9 | cvx_optval = quad_over_lin( x, 1, varargin{:} );
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/functions/@cvx/sum_square_abs.m:
--------------------------------------------------------------------------------
1 | function cvx_optval = sum_square_abs( x, varargin )
2 |
3 | %SUM_SQUARE_ABS Internal cvx version.
4 |
5 | narginchk(1,2);
6 | cvx_optval = quad_over_lin( x, 1, varargin{:} );
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/functions/@cvx/sum_square_pos.m:
--------------------------------------------------------------------------------
1 | function cvx_optval = sum_square_pos( x, varargin ) %#ok
2 |
3 | %SUM_SQUARE_POS Internal cvx version.
4 |
5 | narginchk(1,2);
6 | x2 = [];
7 | cvx_begin
8 | variable x2( size( x ) );
9 | minimize( sum_square( x2, varargin{:} ) );
10 | x2 >= x; %#ok
11 | cvx_end
12 |
13 | % Copyright 2005-2016 CVX Research, Inc.
14 | % See the file LICENSE.txt for full copyright information.
15 | % The command 'cvx_where' will show where this file is located.
16 |
--------------------------------------------------------------------------------
/functions/@cvx/vec.m:
--------------------------------------------------------------------------------
1 | function x = vec( x )
2 |
3 | % VEC CVX implementation of vec
4 |
5 | x.size_ = [prod(x.size_),1];
6 |
7 | % Copyright 2005-2016 CVX Research, Inc.
8 | % See the file LICENSE.txt for full copyright information.
9 | % The command 'cvx_where' will show where this file is located.
10 |
--------------------------------------------------------------------------------
/functions/geomean.m:
--------------------------------------------------------------------------------
1 | function y = geomean( varargin )
2 |
3 | %GEOMEAN Geometric mean.
4 | % GEOMEAN(X) = GEO_MEAN(X) = PROD(X).^(1/LENGTH(X)). We have replaced this
5 | % function with GEO_MEAN to better match our function naming conventions.
6 | % Please start using it instead.
7 |
8 | warning( 'CVX:Renamed', [ ...
9 | 'The function "geomean" has been renamed "geo_mean". Please start\n', ...
10 | 'using the new name. The old name will be removed in a future release.' ], 1 );
11 |
12 | y = geo_mean( varargin{:} );
13 |
14 | % Copyright 2005-2016 CVX Research, Inc.
15 | % See the file LICENSE.txt for full copyright information.
16 | % The command 'cvx_where' will show where this file is located.
17 |
--------------------------------------------------------------------------------
/functions/inv_pos.m:
--------------------------------------------------------------------------------
1 | function y = inv_pos( x )
2 |
3 | %INV_POS Reciprocal of a positive quantity.
4 | % INV_POS(X) returns 1./X if X is positive, and +Inf otherwise.
5 | % X must be real.
6 | %
7 | % For matrices and N-D arrays, the function is applied to each element.
8 | %
9 | % Disciplined convex programming information:
10 | % INV_POS is convex and nonincreasing; therefore, when used in CVX
11 | % specifications, its argument must be concave (or affine).
12 |
13 | narginchk(1,1);
14 | if ~isreal( x ),
15 | error( 'Input must be real.' );
16 | end
17 | y = 1.0 ./ max( x, 0 );
18 |
19 | % Copyright 2005-2016 CVX Research, Inc.
20 | % See the file LICENSE.txt for full copyright information.
21 | % The command 'cvx_where' will show where this file is located.
22 |
--------------------------------------------------------------------------------
/functions/lambda_min.m:
--------------------------------------------------------------------------------
1 | function z = lambda_min( Y )
2 |
3 | % LAMBDA_MIN Minimum eigenvalue of a symmetric matrix.
4 | % For square matrix X, LAMBDA_MIN(X) is MIN(EIG(X)) if X is Hermitian
5 | % or symmetric and real; and -Inf otherwise.
6 | %
7 | % An error results if X is not a square matrix.
8 | %
9 | % Disciplined convex programming information:
10 | % LAMBDA_MIN is concave and nonmonotonic (at least with respect to
11 | % elementwise comparison), so its argument must be affine.
12 |
13 | narginchk(1,1);
14 | z = - lambda_max( -Y );
15 |
16 | % Copyright 2005-2016 CVX Research, Inc.
17 | % See the file LICENSE.txt for full copyright information.
18 | % The command 'cvx_where' will show where this file is located.
19 |
20 |
--------------------------------------------------------------------------------
/functions/logsumexp.m:
--------------------------------------------------------------------------------
1 | function y = logsumexp( varargin )
2 |
3 | %LOGSUMEXP log(sum(exp(x))).
4 | % LOGSUMEXP(X) = LOG_SUM_EXP(X) = LOG(SUM(EXP(X)). We have replaced this
5 | % function with LOG_SUM_EXP to better match our function naming
6 | % conventions. Please start using it instead.
7 |
8 | warning( 'CVX:Renamed', [ ...
9 | 'The function "logsumexp" has been renamed "log_sum_exp". Please start\n', ...
10 | 'using the new name. The old name will be removed in a future release.' ], 1 );
11 |
12 | y = log_sum_exp( varargin{:} );
13 |
14 | % Copyright 2005-2016 CVX Research, Inc.
15 | % See the file LICENSE.txt for full copyright information.
16 | % The command 'cvx_where' will show where this file is located.
17 |
--------------------------------------------------------------------------------
/functions/norm_nuc.m:
--------------------------------------------------------------------------------
1 | function z = norm_nuc( x )
2 |
3 | %NORM_NUC Nuclear norm of a matrix.
4 | % NORM_NUC(X) = SUM(SVD(X)). X must be a 2-D matrix, real or complex.
5 | %
6 | % Disciplined convex programming information:
7 | % NORM_NUC(X) is convex and nonmontonic in X, so X must be affine.
8 |
9 | narginchk(1,1);
10 | z = sum(svd(x));
11 |
12 | % Copyright 2005-2016 CVX Research, Inc.
13 | % See the file LICENSE.txt for full copyright information.
14 | % The command 'cvx_where' will show where this file is located.
15 |
--------------------------------------------------------------------------------
/functions/polyenv.m:
--------------------------------------------------------------------------------
1 | function y = polyenv( varargin )
2 |
3 | %POLYENV Evaluate the convex or concave envelope of a polynomial.
4 | % We have replaced this function with POLY_ENV to better match our
5 | % function naming conventions. Please start using it instead.
6 |
7 | warning( 'CVX:Renamed', [ ...
8 | 'The function "polyenv" has been renamed "poly_env". Please start using\n', ...
9 | 'the new name. The old name will be removed in a future release.' ], 1 );
10 |
11 | y = poly_env( varargin{:} );
12 |
13 | % Copyright 2005-2016 CVX Research, Inc.
14 | % See the file LICENSE.txt for full copyright information.
15 | % The command 'cvx_where' will show where this file is located.
16 |
--------------------------------------------------------------------------------
/functions/pos.m:
--------------------------------------------------------------------------------
1 | function y = pos( x )
2 |
3 | % POS Positive part.
4 | % POS(X) = MAX(X,0). X must be real.
5 | %
6 | % Disciplined convex programming information:
7 | % POS(X) is convex and nondecreasing in X. Thus when used in CVX
8 | % expressions, X must be convex (or affine).
9 |
10 | narginchk(1,1);
11 | if ~isreal( x ),
12 |
13 | error( 'Argument must be real.' );
14 |
15 | else
16 |
17 | y = max( x, 0 );
18 |
19 | end
20 |
21 | % Copyright 2005-2016 CVX Research, Inc.
22 | % See the file LICENSE.txt for full copyright information.
23 | % The command 'cvx_where' will show where this file is located.
24 |
--------------------------------------------------------------------------------
/functions/sigma_max.m:
--------------------------------------------------------------------------------
1 | function z = sigma_max( x )
2 |
3 | %SIGMA_MAX Maximum singular value.
4 | % SIGMA_MAX(X) returns the maximum singular value of X. X must be a 2-D
5 | % matrix, real or complex. SIGMA_MAX(X) is synonymous with NORM(X).
6 | %
7 | % Disciplined convex programming information:
8 | % SIGMA_MAX(X) is convex and nonmontonic in X, so X must be affine.
9 |
10 | narginchk(1,1);
11 | z = norm( x, 2 );
12 |
13 | % Copyright 2005-2016 CVX Research, Inc.
14 | % See the file LICENSE.txt for full copyright information.
15 | % The command 'cvx_where' will show where this file is located.
16 |
--------------------------------------------------------------------------------
/functions/square_/square.m:
--------------------------------------------------------------------------------
1 | function y = square( x )
2 |
3 | %SQUARE Square.
4 | % SQUARE(X) is an array of the same size as X, whose elements are the
5 | % squares of the elements of X.
6 | %
7 | % Disciplined convex programming information:
8 | % If X is real, then SQUARE(X) is convex and nonmonotonic in X. If X
9 | % is complex, then SQUARE(X) is neither convex nor concave. Thus when
10 | % when use in CVX expressions, X must be real and affine.
11 |
12 | narginchk(1,1);
13 | y = x .* x;
14 |
15 | % Copyright 2005-2016 CVX Research, Inc.
16 | % See the file LICENSE.txt for full copyright information.
17 | % The command 'cvx_where' will show where this file is located.
18 |
--------------------------------------------------------------------------------
/functions/square_pos.m:
--------------------------------------------------------------------------------
1 | function y = square_pos( x )
2 |
3 | %SQUARE_POS Square of positive part.
4 | % SQUARE_POS(X) is the square of the postive parts of the elements of X;
5 | % i.e., SQUARE_POS(X)=MAX(X,0).^2. X must be real.
6 | %
7 | % Disciplined convex programming information:
8 | % SQUARE_POS(X) is convex and nondecreasing in X. Thus when used in
9 | % CVX expressions, X must be convex (or affine).
10 |
11 | narginchk(1,1);
12 | if ~isreal( x ),
13 | error( 'Argument must be real.' );
14 | end
15 |
16 | y = square( max( x, 0 ) );
17 |
18 | % Copyright 2005-2016 CVX Research, Inc.
19 | % See the file LICENSE.txt for full copyright information.
20 | % The command 'cvx_where' will show where this file is located.
21 |
--------------------------------------------------------------------------------
/functions/vec_/vec.m:
--------------------------------------------------------------------------------
1 | function v = vec( x )
2 |
3 | % VEC Vectorize.
4 | % VEC(X), where X is a vector, matrix, or N-D array, returns a column vector
5 | % containing all of the elements of X; i.e., VEC(X)=X(:).
6 |
7 | v = reshape( x, numel( x ), 1 );
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/gurobi/EULA.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/gurobi/EULA.pdf
--------------------------------------------------------------------------------
/gurobi/w64/grbgetkey.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/gurobi/w64/grbgetkey.exe
--------------------------------------------------------------------------------
/gurobi/w64/gurobi.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/gurobi/w64/gurobi.mexw64
--------------------------------------------------------------------------------
/gurobi/w64/gurobi75.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/gurobi/w64/gurobi75.dll
--------------------------------------------------------------------------------
/keywords/Contents.m:
--------------------------------------------------------------------------------
1 | % CVX: Keywords for declaring variables and objectives
2 | % dual - Declares one or more dual variables.
3 | % epigraph - Declares an epigraph variable.
4 | % hypograph - Declares a hypograph variable.
5 | % maximize - Specifies a concave (or affine) objective to be maximized.
6 | % minimize - Specifies a convex (or affine) objective to be maximized.
7 | % subject - Implements the "subject to" keyword.
8 | % variable - Declares a single CVX variable with optional matrix structure.
9 | % variables - Declares one or more CVX variables.
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/keywords/In.m:
--------------------------------------------------------------------------------
1 | function y = In
2 | y = cvxin;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cell/cvx_id.m:
--------------------------------------------------------------------------------
1 | function y = cvx_id( x )
2 | y = cellfun( @cvx_id, x );
3 | if isempty( y ),
4 | y = -Inf;
5 | else
6 | y = max( y( : ) );
7 | end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cell/cvx_setdual.m:
--------------------------------------------------------------------------------
1 | function x = cvx_setdual( x, y )
2 | x = cvx_setdual( cvxtuple( x ), y );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cell/cvx_value.m:
--------------------------------------------------------------------------------
1 | function y = cvx_value( x )
2 | global cvx___
3 | y = cellfun( @cvx_value, x, 'UniformOutput', false );
4 |
5 | % Copyright 2005-2016 CVX Research, Inc.
6 | % See the file LICENSE.txt for full copyright information.
7 | % The command 'cvx_where' will show where this file is located.
8 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_basis.m:
--------------------------------------------------------------------------------
1 | function y = cvx_basis( x )
2 | y = x.basis_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_constant.m:
--------------------------------------------------------------------------------
1 | function y = cvx_constant( x )
2 | y = cvx_reshape( x.basis_( 1, : ), x.size_ );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_getdual.m:
--------------------------------------------------------------------------------
1 | function z = cvx_getdual( x )
2 | z = x.dual_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_isaffine.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isaffine( x, full )
2 | narginchk(1,2);
3 | y = cvx_vexity( x );
4 | if nargin < 2,
5 | y = nnz( y ) == 0;
6 | else
7 | y = cvx_reshape( y == 0, x.size_ );
8 | end
9 |
10 | % Copyright 2005-2016 CVX Research, Inc.
11 | % See the file LICENSE.txt for full copyright information.
12 | % The command 'cvx_where' will show where this file is located.
13 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_isconcave.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconcave( x, full )
2 | narginchk(1,2);
3 | y = cvx_vexity( x );
4 | if nargin < 2,
5 | y = nnz( y > 0 ) == 0;
6 | else
7 | y = cvx_reshape( y <= 0, x.size_ );
8 | end
9 |
10 | % Copyright 2005-2016 CVX Research, Inc.
11 | % See the file LICENSE.txt for full copyright information.
12 | % The command 'cvx_where' will show where this file is located.
13 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_isconstant.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconstant( x, full )
2 | narginchk(1,2);
3 | b = x.basis_;
4 | if size( b, 1 ) <= 1,
5 | y = true;
6 | if nargin == 2 && full,
7 | y = y( ones( 1, prod( x.size_ ) ) );
8 | y = reshape( y, x.size_ );
9 | end
10 | elseif nargin == 2 && full,
11 | bz = b ~= 0;
12 | y = cvx_reshape( sum( bz, 1 ) == bz( 1, : ), x.size_ );
13 | else
14 | y = nnz( b ) == nnz( b( 1, : ) );
15 | end
16 |
17 | % Copyright 2005-2016 CVX Research, Inc.
18 | % See the file LICENSE.txt for full copyright information.
19 | % The command 'cvx_where' will show where this file is located.
20 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_isconvex.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconvex( x, full )
2 | narginchk(1,2);
3 | y = cvx_vexity( x );
4 | if nargin < 2,
5 | y = nnz( y < 0 ) == 0;
6 | else
7 | y = cvx_reshape( y >= 0, x.size_ );
8 | end
9 |
10 | % Copyright 2005-2016 CVX Research, Inc.
11 | % See the file LICENSE.txt for full copyright information.
12 | % The command 'cvx_where' will show where this file is located.
13 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_isnonzero.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isnonzero( x, full )
2 | narginchk(1,2);
3 | y = any( x.basis_, 1 );
4 | if nargin < 2,
5 | y = all( y );
6 | else
7 | y = cvx_reshape( y, x.size_ );
8 | end
9 |
10 | % Copyright 2005-2016 CVX Research, Inc.
11 | % See the file LICENSE.txt for full copyright information.
12 | % The command 'cvx_where' will show where this file is located.
13 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_readlevel.m:
--------------------------------------------------------------------------------
1 | function y = cvx_readlevel( x )
2 |
3 | global cvx___
4 | s = size( x.basis_ );
5 | [ r, c ] = find( x.basis_ );
6 | y = max( sparse( r, c, cvx___.readonly( r ), s(1), s(2) ), [], 1 );
7 | y = cvx_reshape( y, x.size_ );
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_setdual.m:
--------------------------------------------------------------------------------
1 | function x = cvx_setdual( x, y )
2 | x.dual_ = y;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvx/cvx_value.m:
--------------------------------------------------------------------------------
1 | function v = cvx_value( x )
2 | v = value( x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvx/in.m:
--------------------------------------------------------------------------------
1 | function a = in( x, y )
2 |
3 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '==' );
4 | if nargout, a = b; end
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvx/keywords.m:
--------------------------------------------------------------------------------
1 | % CVX: Keywords for declaring variables and objectives
2 | % dual - Declares one or more dual variables.
3 | % epigraph - Declares an epigraph variable.
4 | % hypograph - Declares a hypograph variable.
5 | % maximize - Specifies a concave (or affine) objective to be maximized.
6 | % minimize - Specifies a convex (or affine) objective to be maximized.
7 | % subject - Implements the "subject to" keyword.
8 | % variable - Declares a single CVX variable with optional matrix structure.
9 | % variables - Declares one or more CVX variables.
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/lib/@cvx/matlab6.m:
--------------------------------------------------------------------------------
1 | %CVX: Matlab 6 compatability functions.
2 | % This directory contains definitions for 'true' and 'false'. These
3 | % functions are used extensively in CVX, and are built in for MATLAB
4 | % 6.5 and later. For MATLAB 6.1 we supply these surrogates. It is
5 | % *very* important, however, that this directory NOT be placed in
6 | % the MATLAB search path for older versions of MATLAB.
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/lib/@cvx/svec.m:
--------------------------------------------------------------------------------
1 | function z = svec( x, nrm )
2 |
3 | if nargin < 2 || isempty( nrm ) || isequal( nrm, 'fro' ),
4 | nrm = 2;
5 | elseif ~isnumeric( nrm ) || length( nrm ) ~= 1 || nrm < 1,
6 | error( 'Second argument must be a number between 1 and Inf, or ''fro''.' );
7 | end
8 |
9 | if ~isreal( x ) && nrm ~= 2,
10 | z = vec( x );
11 | return
12 | else
13 | [ xR, y ] = bcompress( x );
14 | if isempty( y ),
15 | z = cvx( 0 );
16 | else
17 | z = y .* norms( xR, nrm, 2 );
18 | end
19 | end
20 |
21 | % Copyright 2005-2016 CVX Research, Inc.
22 | % See the file LICENSE.txt for full copyright information.
23 | % The command 'cvx_where' will show where this file is located.
24 |
--------------------------------------------------------------------------------
/lib/@cvx/value.m:
--------------------------------------------------------------------------------
1 | function v = value( x, data )
2 | global cvx___
3 | if nargin == 1,
4 | data = cvx___.x;
5 | end
6 | nx = size( data, 1 );
7 | nb = size( x.basis_, 1 );
8 | if nx < nb,
9 | data( end + 1 : nb, : ) = NaN;
10 | elseif nx > nb,
11 | data( nb + 1 : end, : ) = [];
12 | end
13 | v = cvx_reshape( data.' * x.basis_, x.size_ );
14 | if any( x.size_ == 1 ), v = full( v ); end
15 |
16 | % Copyright 2005-2016 CVX Research, Inc.
17 | % See the file LICENSE.txt for full copyright information.
18 | % The command 'cvx_where' will show where this file is located.
19 |
--------------------------------------------------------------------------------
/lib/@cvxcnst/cvxcnst.m:
--------------------------------------------------------------------------------
1 | function v = cvxcnst( p, rhs )
2 | v = class( struct( 'problem', p, 'rhs', rhs ), 'cvxcnst' );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxcnst/disp.m:
--------------------------------------------------------------------------------
1 | function disp( x )
2 | disp( 'Constraint accepted' );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxcnst/display.m:
--------------------------------------------------------------------------------
1 | function display( x )
2 | long = ~isequal(get(0,'FormatSpacing'),'compact');
3 | if long, disp( ' ' ); end
4 | disp(x);
5 | if long, disp( ' ' ); end
6 |
7 | % Copyright 2005-2016 CVX Research, Inc.
8 | % See the file LICENSE.txt for full copyright information.
9 | % The command 'cvx_where' will show where this file is located.
10 |
--------------------------------------------------------------------------------
/lib/@cvxcnst/double.m:
--------------------------------------------------------------------------------
1 | function x = double( v ) %#ok
2 | error( 'Disciplined convex programming error:\n Constraints may not appear in if/then statements.', 1 ); %#ok
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxcnst/logical.m:
--------------------------------------------------------------------------------
1 | function x = logical( v ) %#ok
2 | error( 'Disciplined convex programming error:\n Constraints may not appear in if/then statements.', 1 ); %#ok
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxcnst/rhs.m:
--------------------------------------------------------------------------------
1 | function x = rhs( y )
2 | x = y.rhs;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/cvx_basis.m:
--------------------------------------------------------------------------------
1 | function ans = cvx_basis( x, varargin )
2 | ans = cvx_basis( cvxaff( x ), varargin{:} );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/cvx_value.m:
--------------------------------------------------------------------------------
1 | function v = cvx_value( x )
2 | v = value( x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/cvxaff.m:
--------------------------------------------------------------------------------
1 | function y = cvxaff( x )
2 | global cvx___
3 | y = subsref( cvx___.problems( x.problem_ ).duals, x.name_ );
4 |
5 | % Copyright 2005-2016 CVX Research, Inc.
6 | % See the file LICENSE.txt for full copyright information.
7 | % The command 'cvx_where' will show where this file is located.
8 |
--------------------------------------------------------------------------------
/lib/@cvxdual/cvxdual.m:
--------------------------------------------------------------------------------
1 | function y = cvxdual( prob, name )
2 |
3 | y = class( struct( 'problem_', prob, 'name_', name, 'attached_', false ), 'cvxdual', cvxobj );
4 |
5 | % Copyright 2005-2016 CVX Research, Inc.
6 | % See the file LICENSE.txt for full copyright information.
7 | % The command 'cvx_where' will show where this file is located.
8 |
--------------------------------------------------------------------------------
/lib/@cvxdual/disp.m:
--------------------------------------------------------------------------------
1 | function disp( x, prefix, iname )
2 | if nargin < 2, prefix = ''; end
3 | if nargin < 3, iname = ''; end
4 | nm = cvx_subs2str( x.name_ );
5 | nm = nm(2:end);
6 | if ~isequal( nm, iname ),
7 | disp( [ prefix, 'cvx dual variable ', nm, ' (', type( x ), ')' ] );
8 | else
9 | disp( [ prefix, 'cvx dual variable (', type( x ), ')' ] );
10 | end
11 |
12 | % Copyright 2005-2016 CVX Research, Inc.
13 | % See the file LICENSE.txt for full copyright information.
14 | % The command 'cvx_where' will show where this file is located.
15 |
--------------------------------------------------------------------------------
/lib/@cvxdual/display.m:
--------------------------------------------------------------------------------
1 | function display( x )
2 | nm = inputname(1);
3 | long = ~isequal(get(0,'FormatSpacing'),'compact');
4 | if long, disp( ' ' ); end
5 | disp([nm ' =']);
6 | if long, disp( ' ' ); end
7 | disp(x,' ',nm);
8 | if long, disp( ' ' ); end
9 |
10 | % Copyright 2005-2016 CVX Research, Inc.
11 | % See the file LICENSE.txt for full copyright information.
12 | % The command 'cvx_where' will show where this file is located.
13 |
--------------------------------------------------------------------------------
/lib/@cvxdual/dof.m:
--------------------------------------------------------------------------------
1 | function y = dof( x )
2 | y = size( cvx_basis( cvxaff( x ) ), 2 );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/inuse.m:
--------------------------------------------------------------------------------
1 | function y = inuse( x )
2 | y = ~isempty( x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/isreal.m:
--------------------------------------------------------------------------------
1 | function y = isreal( x )
2 | y = isreal( cvxaff( x ) );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/name.m:
--------------------------------------------------------------------------------
1 | function y = name( x )
2 | y = x.name_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/problem.m:
--------------------------------------------------------------------------------
1 | function p = problem( x )
2 | p = x.problem_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/size.m:
--------------------------------------------------------------------------------
1 | function y = size( x, varargin )
2 | y = size( cvxaff( x ), varargin{:} );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/subsref.m:
--------------------------------------------------------------------------------
1 | function x = subsref( x, S )
2 | error( 'Cannot use subscripting on dual variables.' );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxdual/value.m:
--------------------------------------------------------------------------------
1 | function v = value( x )
2 | global cvx___
3 | v = cvxaff( x );
4 | switch class( v ),
5 | case 'cvx',
6 | v = value( v, cvx___.y );
7 | case 'cell',
8 | for k = 1 : numel( v ),
9 | v{k} = value( v{k}, cvx___.y );
10 | end
11 | end
12 |
13 | % Copyright 2005-2016 CVX Research, Inc.
14 | % See the file LICENSE.txt for full copyright information.
15 | % The command 'cvx_where' will show where this file is located.
16 |
--------------------------------------------------------------------------------
/lib/@cvxin/cvxin.m:
--------------------------------------------------------------------------------
1 | function v = cvxin
2 | superiorto('cell','struct','cvx','cvxtuple');
3 | v = class( struct( 'active', false, 'value', [] ), 'cvxin' );
4 |
5 | % Copyright 2005-2016 CVX Research, Inc.
6 | % See the file LICENSE.txt for full copyright information.
7 | % The command 'cvx_where' will show where this file is located.
8 |
--------------------------------------------------------------------------------
/lib/@cvxin/cvxtuple.m:
--------------------------------------------------------------------------------
1 | function v = cvxtuple( varargin )
2 |
3 | if nargin == 1,
4 | v = varargin{1};
5 | switch class( v ),
6 | case 'struct',
7 | if numel( v ) ~= 1,
8 | error( 'struct arrays not permitted in cvx tuple objects.' );
9 | end
10 | case 'cell',
11 | v = reshape( v, 1, numel( v ) );
12 | otherwise,
13 | return
14 | end
15 | else
16 | v = varargin;
17 | end
18 |
19 | v = class( struct( 'value_', { v } ), 'cvxtuple', cvxobj );
20 |
21 | % Copyright 2005-2016 CVX Research, Inc.
22 | % See the file LICENSE.txt for full copyright information.
23 | % The command 'cvx_where' will show where this file is located.
24 |
--------------------------------------------------------------------------------
/lib/@cvxin/gt.m:
--------------------------------------------------------------------------------
1 | function a = gt( x, y )
2 |
3 | if isa(y,'cvxin')||~isa(x,'cvxin')||~x.active,
4 | error( 'CVX error: improper use of the pseudo-operator.' );
5 | end
6 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x.value, y, '==' );
7 | if nargout, a = b; end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cvxin/lt.m:
--------------------------------------------------------------------------------
1 | function y = lt( x, y )
2 |
3 | if isa(x,'cvxin')||~isa(y,'cvxin')||y.active,
4 | error( 'CVX error: improper use of the pseudo-operator.' );
5 | end
6 | y.active = true;
7 | y.value = x;
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cvxobj/cvx_id.m:
--------------------------------------------------------------------------------
1 | function y = cvx_id( x )
2 | y = x.id_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxobj/cvxobj.m:
--------------------------------------------------------------------------------
1 | function y = cvxobj()
2 | global cvx___
3 | if isempty( cvx___ ),
4 | error( 'Internal cvx data corruption' );
5 | end
6 | cvx___.id = cvx___.id + 1;
7 | y = class( struct( 'id_', cvx___.id ), 'cvxobj' );
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cvxobj/disp.m:
--------------------------------------------------------------------------------
1 | function disp( x, prefix ) %#ok
2 | if nargin < 2, prefix = ''; end
3 | disp( [ prefix, 'cvx base object' ] );
4 |
5 | % Copyright 2005-2016 CVX Research, Inc.
6 | % See the file LICENSE.txt for full copyright information.
7 | % The command 'cvx_where' will show where this file is located.
8 |
--------------------------------------------------------------------------------
/lib/@cvxobj/display.m:
--------------------------------------------------------------------------------
1 | function display( x )
2 | long = ~isequal(get(0,'FormatSpacing'),'compact');
3 | if long, disp( ' ' ); end
4 | disp([inputname(1) ' =']);
5 | if long, disp( ' ' ); end
6 | disp(x,' ')
7 | if long, disp( ' ' ); end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cvxobj/isempty.m:
--------------------------------------------------------------------------------
1 | function y = isempty( x )
2 | y = any( size( x ) == 0 );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxobj/isequal.m:
--------------------------------------------------------------------------------
1 | function z = isequal( x, y )
2 | z = x.id_ == y.id_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxobj/length.m:
--------------------------------------------------------------------------------
1 | function n = length( x )
2 | s = size( x );
3 | if any( s == 0 ),
4 | n = 0;
5 | else
6 | n = max( s );
7 | end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cvxobj/ndims.m:
--------------------------------------------------------------------------------
1 | function n = ndims( x )
2 | n = length( size( x ) );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxobj/numel.m:
--------------------------------------------------------------------------------
1 | function n = numel( x, varargin )
2 | n = prod( size( x ) ); %#ok
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxobj/subsasgn.m:
--------------------------------------------------------------------------------
1 | function x = subsasgn( x, S, y )
2 | error( 'Subscripted assignment not allowed for these objects.' );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxobj/subsref.m:
--------------------------------------------------------------------------------
1 | function x = subsref( x, S, cheat )
2 | error( 'Subscripts not allowed for this object.' );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxprob/cvx_value.m:
--------------------------------------------------------------------------------
1 | function v = cvx_value( x )
2 | warning( 'CVX:IllegalUse', ...
3 | 'CVX error: illegal use of a cvx problem object has been detected.\n Please do not copy or manipulate the value of ''cvx_problem'' in any way.', 1 ); %#ok
4 | v = [];
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvxprob/eq.m:
--------------------------------------------------------------------------------
1 | function z = eq( x, y )
2 | if ~isa( x, class( y ) )
3 | error( 'cvxprob objects may only be compared to each other.' );
4 | else
5 | z = cvx_id( x ) == cvx_id( y );
6 | end
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/lib/@cvxprob/index.m:
--------------------------------------------------------------------------------
1 | function y = index( x )
2 | y = x.index_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxprob/ne.m:
--------------------------------------------------------------------------------
1 | function z = ne( x, y )
2 | z = ~eq( x, y );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxprob/newtemp.m:
--------------------------------------------------------------------------------
1 | function z = newtemp( prob, siz )
2 |
3 | % NEWTEMP Creates a temporary variable.
4 |
5 | global cvx___
6 | vstr = cvx___.problems( prob.index_ ).variables;
7 | if isfield( vstr, 'temp_' ),
8 | ndx = length( vstr.temp_ );
9 | else
10 | ndx = 0;
11 | end
12 | base = struct( 'type', { '.', '{}' }, 'subs', { 'temp_', { ndx + 1 } } );
13 | z = newvar( prob, base, siz );
14 |
15 | % Copyright 2005-2016 CVX Research, Inc.
16 | % See the file LICENSE.txt for full copyright information.
17 | % The command 'cvx_where' will show where this file is located.
18 |
--------------------------------------------------------------------------------
/lib/@cvxprob/spy.m:
--------------------------------------------------------------------------------
1 | function spy( prob, reduce )
2 | if nargin < 2 || ~reduce,
3 | A = extract( prob );
4 | else
5 | A = eliminate( prob );
6 | end
7 | spy( A' );
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/@cvxprob/subsasgn.m:
--------------------------------------------------------------------------------
1 | function x = subsasgn( x, S, y )
2 | error( 'Subscripted assignment not allowed for cvx problem objects.' );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxprob/subsref.m:
--------------------------------------------------------------------------------
1 | function y = subsref( x, S, cheat )
2 | global cvx___
3 | y = subsref( cvx___.problems( x.index_ ), S );
4 |
5 | % Copyright 2005-2016 CVX Research, Inc.
6 | % See the file LICENSE.txt for full copyright information.
7 | % The command 'cvx_where' will show where this file is located.
8 |
--------------------------------------------------------------------------------
/lib/@cvxprob/touch.m:
--------------------------------------------------------------------------------
1 | function x = touch( p, x, iseq )
2 | global cvx___
3 | if nargin < 3, iseq = false; end
4 |
5 | if isa( x, 'cvx' ),
6 | p = p.index_;
7 | b = cvx_basis( x );
8 | y = any( b, 2 );
9 | if iseq,
10 | cvx___.canslack( y ) = false;
11 | end
12 | v = cvx___.problems( p ).t_variable;
13 | nv = size( v, 1 );
14 | ny = length( y );
15 | if ny < nv,
16 | y( nv, : ) = 0;
17 | elseif nv < ny,
18 | y = y( 1 : nv, : );
19 | end
20 | cvx___.problems( p ).t_variable = v | y;
21 | end
22 |
23 | % Copyright 2005-2016 CVX Research, Inc.
24 | % See the file LICENSE.txt for full copyright information.
25 | % The command 'cvx_where' will show where this file is located.
26 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/apply.m:
--------------------------------------------------------------------------------
1 | function y = apply( func, x )
2 | y = do_apply( func, x.value_ );
3 |
4 | function y = do_apply( func, x )
5 | switch class( x ),
6 | case 'struct',
7 | y = cell2struct( do_apply( func, struct2cell( x ) ), fieldnames( x ), 1 );
8 | case 'cell',
9 | y = cellfun( func, x, 'UniformOutput', false );
10 | otherwise,
11 | y = feval( func, x );
12 | end
13 |
14 | % Copyright 2005-2016 CVX Research, Inc.
15 | % See the file LICENSE.txt for full copyright information.
16 | % The command 'cvx_where' will show where this file is located.
17 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_collapse.m:
--------------------------------------------------------------------------------
1 | function x = cvx_collapse( x, keeptemp, tocell )
2 | x = cvx_collapse( x.value_, keeptemp, tocell );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_constant.m:
--------------------------------------------------------------------------------
1 | function y = cvx_constant( x )
2 | y = apply( @cvx_constant, x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_getdual.m:
--------------------------------------------------------------------------------
1 | function x = cvx_getdual( x )
2 | x = x.dual_;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_id.m:
--------------------------------------------------------------------------------
1 | function y = cvx_id( x )
2 | y = apply( @cvx_id, x );
3 | switch class( y ),
4 | case 'struct',
5 | y = struct2cell( y );
6 | y = max( [ -Inf, y{:} ] );
7 | case 'cell',
8 | y = max( [ -Inf, y{:} ] );
9 | end
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
15 |
16 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_isaffine.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isaffine( x )
2 | y = testall( @cvx_isaffine, x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_isconcave.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconcave( x )
2 | y = testall( @cvx_isconcave, x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_isconstant.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconstant( x )
2 | y = testall( @cvx_isconstant, x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_isconvex.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconvex( x )
2 | y = testall( @cvx_isconvex, x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvx_value.m:
--------------------------------------------------------------------------------
1 | function y = cvx_value( x )
2 | y = apply( @cvx_value, x );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/cvxtuple.m:
--------------------------------------------------------------------------------
1 | function v = cvxtuple( varargin )
2 |
3 | if nargin == 1,
4 | v = varargin{1};
5 | switch class( v ),
6 | case 'struct',
7 | if numel( v ) ~= 1,
8 | error( 'struct arrays not permitted in cvx tuple objects.' );
9 | end
10 | case 'cell',
11 | v = reshape( v, 1, numel( v ) );
12 | otherwise,
13 | return
14 | end
15 | else
16 | v = varargin;
17 | end
18 |
19 | v = class( struct( 'value_', { v }, 'dual_', { [] } ), 'cvxtuple', cvxobj );
20 |
21 | % Copyright 2005-2016 CVX Research, Inc.
22 | % See the file LICENSE.txt for full copyright information.
23 | % The command 'cvx_where' will show where this file is located.
24 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/eq.m:
--------------------------------------------------------------------------------
1 | function a = eq( x, y )
2 |
3 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '==' );
4 | if nargout, a = b; end
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/ge.m:
--------------------------------------------------------------------------------
1 | function a = ge( x, y )
2 |
3 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '>=' );
4 | if nargout, a = b; end
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/gt.m:
--------------------------------------------------------------------------------
1 | function a = gt( x, y )
2 |
3 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '>' );
4 | if nargout, a = b; end
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/in.m:
--------------------------------------------------------------------------------
1 | function a = in( x, y )
2 |
3 | narginchk(2,2);
4 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '==' );
5 | if nargout, a = b; end
6 |
7 | % Copyright 2005-2016 CVX Research, Inc.
8 | % See the file LICENSE.txt for full copyright information.
9 | % The command 'cvx_where' will show where this file is located.
10 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/le.m:
--------------------------------------------------------------------------------
1 | function a = le( x, y )
2 |
3 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '<=' );
4 | if nargout, a = b; end
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/lt.m:
--------------------------------------------------------------------------------
1 | function a = lt( x, y )
2 |
3 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '<' );
4 | if nargout, a = b; end
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/ne.m:
--------------------------------------------------------------------------------
1 | function a = ne( x, y )
2 |
3 | b = newcnstr( evalin( 'caller', 'cvx_problem', '[]' ), x, y, '~=' );
4 | if nargout, a = b; end
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/numel.m:
--------------------------------------------------------------------------------
1 | function n = numel( x, varargin )
2 | n = numel( x.value_, varargin{:} );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/subsasgn.m:
--------------------------------------------------------------------------------
1 | function y = subsasgn( x, varargin ) %#ok
2 | error( 'cvx tuple objects are read-only.' );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/subsref.m:
--------------------------------------------------------------------------------
1 | function y = subsref( x, varargin )
2 | y = cvxtuple( subsref( x.value_, varargin{:} ) );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
8 |
--------------------------------------------------------------------------------
/lib/@cvxtuple/testall.m:
--------------------------------------------------------------------------------
1 | function y = testall( func, x )
2 | y = do_test( func, x.value_ );
3 |
4 | function y = do_test( func, x )
5 | switch class( x ),
6 | case 'struct',
7 | y = do_test( func, struct2cell( x ) );
8 | case 'cell',
9 | y = all( cellfun( func, x ) );
10 | otherwise,
11 | y = feval( func, x );
12 | end
13 |
14 | % Copyright 2005-2016 CVX Research, Inc.
15 | % See the file LICENSE.txt for full copyright information.
16 | % The command 'cvx_where' will show where this file is located.
17 |
--------------------------------------------------------------------------------
/lib/Contents.m:
--------------------------------------------------------------------------------
1 | % CVX: Internal functions and scripts.
2 | % This directory contains code that is meant for internal use by
3 | % the CVX system itself. Documentation of the functions in this
4 | % directory is more sparse and not intended for end users.
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/cvx_accept_concave.m:
--------------------------------------------------------------------------------
1 | function x = cvx_accept_concave( x )
2 | global cvx___
3 | if isa( x, 'cvx' ),
4 | t = cvx_vexity( x ) < 0;
5 | if any( t( : ) ),
6 | prob = cvx___.problems(end).self;
7 | if all( t ),
8 | src = x;
9 | dst = newtemp( prob, size( src ) );
10 | x = dst;
11 | else
12 | src = x( t );
13 | dst = newtemp( prob, size( src ) );
14 | x( t ) = dst;
15 | end
16 | newcnstr( prob, src(:), dst(:), '>=' );
17 | end
18 | end
19 |
20 | % Copyright 2005-2016 CVX Research, Inc.
21 | % See the file LICENSE.txt for full copyright information.
22 | % The command 'cvx_where' will show where this file is located.
23 |
--------------------------------------------------------------------------------
/lib/cvx_accept_convex.m:
--------------------------------------------------------------------------------
1 | function x = cvx_accept_convex( x )
2 | global cvx___
3 | if isa( x, 'cvx' ),
4 | t = cvx_vexity( x ) > 0;
5 | if any( t( : ) ),
6 | prob = cvx___.problems(end).self;
7 | if all( t ),
8 | src = x;
9 | dst = newtemp( prob, size( src ) );
10 | x = dst;
11 | else
12 | src = x( t );
13 | dst = newtemp( prob, size( src ) );
14 | x( t ) = dst;
15 | end
16 | newcnstr( prob, src(:), dst(:), '<=' );
17 | end
18 | end
19 |
20 | % Copyright 2005-2016 CVX Research, Inc.
21 | % See the file LICENSE.txt for full copyright information.
22 | % The command 'cvx_where' will show where this file is located.
23 |
--------------------------------------------------------------------------------
/lib/cvx_basis.m:
--------------------------------------------------------------------------------
1 | function y = cvx_basis( x )
2 |
3 | if isempty( x )
4 | y = sparse( 1, 0 );
5 | else
6 | y = sparse( reshape( x, 1, numel( x ) ) );
7 | end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/cvx_bcompress_mex.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/lib/cvx_bcompress_mex.mexw64
--------------------------------------------------------------------------------
/lib/cvx_classify.m:
--------------------------------------------------------------------------------
1 | function v = cvx_classify( x )
2 |
3 | % Classifications:
4 | % 1 - negative constant
5 | % 2 - zero
6 | % 3 - positive constant
7 | % 4 - complex constant
8 | % 5 - concave
9 | % 6 - real affine
10 | % 7 - convex
11 | % 8 - complex affine
12 | % 9 - log concave
13 | % 10 - log affine
14 | % 11 - log convex monomial
15 | % 12 - log convex posynomial
16 | % 13 - invalid
17 |
18 | v = full( sign( real( x ) ) ) + 2;
19 | if ~isreal( x ),
20 | v( imag( x ) ~= 0 ) = 4;
21 | end
22 | v( ~isfinite( x ) ) = 13;
23 | v = reshape( v, 1, numel( x ) );
24 |
25 | % Copyright 2005-2016 CVX Research, Inc.
26 | % See the file LICENSE.txt for full copyright information.
27 | % The command 'cvx_where' will show where this file is located.
28 |
--------------------------------------------------------------------------------
/lib/cvx_constant.m:
--------------------------------------------------------------------------------
1 | function y = cvx_constant( x )
2 | narginchk(1,1);
3 | y = x;
4 |
5 | % Copyright 2005-2016 CVX Research, Inc.
6 | % See the file LICENSE.txt for full copyright information.
7 | % The command 'cvx_where' will show where this file is located.
8 |
--------------------------------------------------------------------------------
/lib/cvx_eliminate_mex.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/lib/cvx_eliminate_mex.mexw64
--------------------------------------------------------------------------------
/lib/cvx_expand_dim.m:
--------------------------------------------------------------------------------
1 | function zx = cvx_expand_dim( z, dim, nx )
2 |
3 | %CVX_EXPAND_DIM Expands an N-D array along a specified dimension.
4 | % CVX_EXPAND_DIM( X, DIM, NX ) stacks NX copies of the matrix X along the
5 | % dimension NX. It is equivalent to CAT( DIM, X, X, ..., X ), where X is
6 | % repeated NX times.
7 | %
8 | % This is an internal CVX function, and as such no checking is performed to
9 | % insure that the arguments are valid.
10 |
11 | zdims = cell( 1, max( ndims(z), dim ) );
12 | [ zdims{:} ] = deal( ':' );
13 | zdims{dim} = ones( 1, nx );
14 | zx = z( zdims{:} );
15 |
16 | % Copyright 2005-2016 CVX Research, Inc.
17 | % See the file LICENSE.txt for full copyright information.
18 | % The command 'cvx_where' will show where this file is located.
19 |
20 |
--------------------------------------------------------------------------------
/lib/cvx_getdual.m:
--------------------------------------------------------------------------------
1 | function y = cvx_getdual( x )
2 | y = [];
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/cvx_id.m:
--------------------------------------------------------------------------------
1 | function y = cvx_id( x ) %#ok
2 | y = -Inf;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/cvx_ids.m:
--------------------------------------------------------------------------------
1 | function y = cvx_ids( varargin )
2 | y = cellfun( @cvx_id, varargin );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/cvx_isaffine.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isaffine( x, full ) %#ok
2 | narginchk(1,2);
3 | if nargin == 1,
4 | y = true;
5 | else
6 | y = true( size( x ) );
7 | end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/cvx_isconcave.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconcave( x, full ) %#ok
2 | narginchk(1,2);
3 | if nargin == 2,
4 | y = ~imag( x );
5 | elseif isreal( x ),
6 | y = true;
7 | else
8 | y = nnz(imag(x)) == 0;
9 | end
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/lib/cvx_isconstant.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconstant( x, full ) %#ok
2 | narginchk(1,2);
3 | if nargin == 1,
4 | y = true;
5 | else
6 | y = true( size( x ) );
7 | end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/cvx_isconvex.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isconvex( x, full ) %#ok
2 | narginchk(1,2);
3 | if nargin == 2,
4 | y = ~imag( x );
5 | elseif isreal( x ),
6 | y = true;
7 | else
8 | y = nnz(imag(x)) == 0;
9 | end
10 |
11 | % Copyright 2005-2016 CVX Research, Inc.
12 | % See the file LICENSE.txt for full copyright information.
13 | % The command 'cvx_where' will show where this file is located.
14 |
--------------------------------------------------------------------------------
/lib/cvx_isnonzero.m:
--------------------------------------------------------------------------------
1 | function y = cvx_isnonzero( x, full ) %#ok
2 | narginchk(1,2);
3 | if nargin == 1,
4 | y = nnz( x ) ~= 0;
5 | else
6 | y = x ~= 0;
7 | end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/cvx_readlevel.m:
--------------------------------------------------------------------------------
1 | function y = cvx_readlevel( x )
2 | if ndims( x ) <= 2,
3 | y = sparse( size( x, 1 ), size( x, 2 ) );
4 | else
5 | y = zeros( size( x ) );
6 | end
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/lib/cvx_setdual.m:
--------------------------------------------------------------------------------
1 | function x = cvx_setdual( x, y )
2 | x = cvx_setdual( cvx( x ), y );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/cvx_subsasgn.m:
--------------------------------------------------------------------------------
1 | function y = cvx_subsasgn( y, varargin )
2 | temp.type = '()';
3 | temp.subs = varargin(1:end-1);
4 | y = subsasgn( y, temp, varargin{end} );
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/cvx_subsref.m:
--------------------------------------------------------------------------------
1 | function y = cvx_subsref( x, varargin )
2 | temp.type = '()';
3 | temp.subs = varargin;
4 | y = subsref( x, temp );
5 |
6 | % Copyright 2005-2016 CVX Research, Inc.
7 | % See the file LICENSE.txt for full copyright information.
8 | % The command 'cvx_where' will show where this file is located.
9 |
--------------------------------------------------------------------------------
/lib/cvx_value.m:
--------------------------------------------------------------------------------
1 | function v = cvx_value( x )
2 | v = x;
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/cvx_values.m:
--------------------------------------------------------------------------------
1 | function varargout = cvx_values( varargin )
2 | varargout = cvx_value( varargin );
3 |
4 | % Copyright 2005-2016 CVX Research, Inc.
5 | % See the file LICENSE.txt for full copyright information.
6 | % The command 'cvx_where' will show where this file is located.
7 |
--------------------------------------------------------------------------------
/lib/cvx_vexity.m:
--------------------------------------------------------------------------------
1 | function y = cvx_vexity( x )
2 | sx = size( x );
3 | if cvx_use_sparse( sx, 0, true )
4 | y = sparse( sx(1), sx(2) );
5 | else
6 | y = zeros( sx );
7 | end
8 |
9 | % Copyright 2005-2016 CVX Research, Inc.
10 | % See the file LICENSE.txt for full copyright information.
11 | % The command 'cvx_where' will show where this file is located.
12 |
--------------------------------------------------------------------------------
/lib/cvx_zeros.m:
--------------------------------------------------------------------------------
1 | function x = cvx_zeros( s )
2 | if cvx_use_sparse( s, 0, 1 ),
3 | x = sparse( s(1), s(2) );
4 | else
5 | x = zeros( s );
6 | end
7 |
8 | % Copyright 2005-2016 CVX Research, Inc.
9 | % See the file LICENSE.txt for full copyright information.
10 | % The command 'cvx_where' will show where this file is located.
11 |
--------------------------------------------------------------------------------
/lib/narginchk_/narginchk.m:
--------------------------------------------------------------------------------
1 | function narginchk(imin, imax)
2 | narg = evalin('caller', 'nargin');
3 | if narg < imin,
4 | me = {'MATLAB:narginchk:notEnoughInputs', 'Not enough input arguments.'};
5 | elseif narg > imax,
6 | me = {'MATLAB:narginchk:tooManyInputs', 'Too many input arguments.'};
7 | else
8 | return
9 | end
10 | throwAsCaller(MException(me{:}));
11 |
12 |
--------------------------------------------------------------------------------
/mosek/license.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/mosek/license.pdf
--------------------------------------------------------------------------------
/mosek/w64/cilkrts20.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/mosek/w64/cilkrts20.dll
--------------------------------------------------------------------------------
/mosek/w64/libiomp5md.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/mosek/w64/libiomp5md.dll
--------------------------------------------------------------------------------
/mosek/w64/mosek64_8_0.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/mosek/w64/mosek64_8_0.dll
--------------------------------------------------------------------------------
/mosek/w64/mosekopt.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/mosek/w64/mosekopt.mexw64
--------------------------------------------------------------------------------
/sdpt3/Examples/graph.m:
--------------------------------------------------------------------------------
1 | %%******************************************************
2 | %% graph: generate random adjacency matrix.
3 | %%
4 | %% B = graph(n,prob);
5 | %%
6 | %% see maxcut.m
7 | %%
8 | %% SDPT3: version 3.0
9 | %% Copyright (c) 1997 by
10 | %% K.C. Toh, M.J. Todd, R.H. Tutuncu
11 | %% Last modified: 2 Feb 01
12 | %%******************************************************
13 |
14 | function B = graph(n,prob);
15 |
16 | B = zeros(n,n);
17 | if nargin <= 1; prob = 0.5; end;
18 | for i = 1:n
19 | for j = i+1:n
20 | r = rand(1);
21 | if (r < prob); B(i,j) = 1; B(j,i) = 1; end;
22 | end;
23 | end;
24 | %%======================================================
25 |
--------------------------------------------------------------------------------
/sdpt3/Examples/mcpschur.m:
--------------------------------------------------------------------------------
1 | %%****************************************************
2 | %% mcpschur: compute schur matrix of HKM or NT direction
3 | %% for MCP and maxG problems.
4 | %%
5 | %% [schurmat] = mcpschur(X,Zinv,schurfun_par);
6 | %%
7 | %% Ak= -ek*ek';
8 | %%
9 | %% SDPT3: version 3.1
10 | %% Copyright (c) 1997 by
11 | %% K.C. Toh, M.J. Todd, R.H. Tutuncu
12 | %% Last Modified: 21 May 2004
13 | %%****************************************************
14 |
15 | function [schurmat] = mcpschur(X,Zinv,schurfun_pars);
16 |
17 | schurmat = X .* Zinv;
18 | %%****************************************************
19 |
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexMatvec.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexMatvec.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexProd2.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexProd2.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexProd2nz.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexProd2nz.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexexpand.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexexpand.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexinprod.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexinprod.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexmat.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexmat.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexnnz.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexnnz.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexqops.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexqops.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexschur.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexschur.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexschurfun.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexschurfun.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexskron.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexskron.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexsmat.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexsmat.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mexsvec.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mexsvec.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mextriang.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mextriang.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/Mexfun/mextriangsp.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/Solver/Mexfun/mextriangsp.mexw64
--------------------------------------------------------------------------------
/sdpt3/Solver/mytime.m:
--------------------------------------------------------------------------------
1 | %%*********************************************
2 | %% mytime:
3 | %%
4 | %% SDPT3: version 3.1
5 | %% Copyright (c) 1997 by
6 | %% K.C. Toh, M.J. Todd, R.H. Tutuncu
7 | %% Last Modified: 16 Sep 2004
8 | %%*********************************************
9 |
10 | function [hh,mm,ss] = mytime(t)
11 |
12 | t = round(t);
13 | h = floor(t/3600);
14 | m = floor(rem(t,3600)/60);
15 | s = rem(rem(t,60),60);
16 |
17 | hh = num2str(h);
18 | if (h > 0) && (m < 10)
19 | mm = ['0',num2str(m)];
20 | else
21 | mm = num2str(m);
22 | end
23 | if (s < 10)
24 | ss = ['0',num2str(s)];
25 | else
26 | ss = num2str(s);
27 | end
28 | %%**********************************************
29 |
--------------------------------------------------------------------------------
/sdpt3/Solver/qprod.m:
--------------------------------------------------------------------------------
1 | %%***************************************************
2 | %% qprod:
3 | %%
4 | %% Input: A = [A1 A2 ... An]
5 | %% x = [x1; x2; ...; xn]
6 | %% Output: [A1*x1 A2*x2 ... An*xn]
7 | %%
8 | %% SDPT3: version 3.1
9 | %% Copyright (c) 1997 by
10 | %% K.C. Toh, M.J. Todd, R.H. Tutuncu
11 | %% Last Modified: 16 Sep 2004
12 | %%***************************************************
13 |
14 | function Ax = qprod(pblk,A,x)
15 |
16 | if (size(pblk,1) > 1)
17 | error('qprod: pblk can only have 1 row');
18 | end
19 | if issparse(x); x = full(x); end; %% for spconvert
20 | n = length(x);
21 | ii = (1:n)';
22 | jj = mexexpand(pblk{2},(1:length(pblk{2}))');
23 | X = spconvert([ii, jj, x]);
24 | Ax = A*X;
25 | %%***************************************************
26 |
--------------------------------------------------------------------------------
/sdpt3/dimacs/copo14.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/dimacs/copo14.mat
--------------------------------------------------------------------------------
/sdpt3/dimacs/filter48_socp.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/dimacs/filter48_socp.mat
--------------------------------------------------------------------------------
/sdpt3/dimacs/hamming_7_5_6.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/dimacs/hamming_7_5_6.mat
--------------------------------------------------------------------------------
/sdpt3/dimacs/minphase.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/dimacs/minphase.mat
--------------------------------------------------------------------------------
/sdpt3/dimacs/nql30.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/dimacs/nql30.mat
--------------------------------------------------------------------------------
/sdpt3/dimacs/sched_50_50_scaled.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sdpt3/dimacs/sched_50_50_scaled.mat
--------------------------------------------------------------------------------
/sedumi/Changelog.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/Changelog.txt
--------------------------------------------------------------------------------
/sedumi/Install.txt:
--------------------------------------------------------------------------------
1 | SeDuMi 1.3
2 | Installation instructions
3 |
4 | This version of SeDuMi comes with binaries for recent (tested up to Matlab 2009b) versions of Matlab in both
5 | 32 bit and 64 bit flavour under Windows, Linux and Mac OS. In case the binaries don't work for your system,
6 | try to run install_sedumi. Note that you may have to install a compiler for Matlab first.
7 |
8 | If you encounter any bugs or other code-related issues, you can submit a report to the GitHub issues page:
9 | https://github.com/sedumi/sedumi/issues
10 |
11 | For more information about SeDuMi, including documentation and technical papers, please visit:
12 | http://sedumi.ie.lehigh.edu/
13 |
14 | Regards,
15 | Your SeDuMi maintainers
16 |
17 |
--------------------------------------------------------------------------------
/sedumi/Version.txt:
--------------------------------------------------------------------------------
1 | 1.32
2 | 20130724
3 |
--------------------------------------------------------------------------------
/sedumi/ada_pcg.m:
--------------------------------------------------------------------------------
1 | %A dummy file for Yalmip.
--------------------------------------------------------------------------------
/sedumi/adendotd.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/adendotd.mexw64
--------------------------------------------------------------------------------
/sedumi/adenscale.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/adenscale.mexw64
--------------------------------------------------------------------------------
/sedumi/blkchol.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/blkchol.mexw64
--------------------------------------------------------------------------------
/sedumi/bwblkslv.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/bwblkslv.mexw64
--------------------------------------------------------------------------------
/sedumi/bwdpr1.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/bwdpr1.mexw64
--------------------------------------------------------------------------------
/sedumi/cholsplit.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/cholsplit.mexw64
--------------------------------------------------------------------------------
/sedumi/choltmpsiz.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/choltmpsiz.mexw64
--------------------------------------------------------------------------------
/sedumi/ddot.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/ddot.mexw64
--------------------------------------------------------------------------------
/sedumi/doc/SeDuMi_Guide_105R5.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/doc/SeDuMi_Guide_105R5.pdf
--------------------------------------------------------------------------------
/sedumi/doc/SeDuMi_Guide_11.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/doc/SeDuMi_Guide_11.pdf
--------------------------------------------------------------------------------
/sedumi/dpr1fact.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/dpr1fact.mexw64
--------------------------------------------------------------------------------
/sedumi/examples/OH_2Pi_STO-6GN9r12g1T2.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/examples/OH_2Pi_STO-6GN9r12g1T2.mat
--------------------------------------------------------------------------------
/sedumi/examples/arch0.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/examples/arch0.mat
--------------------------------------------------------------------------------
/sedumi/examples/control07.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/examples/control07.mat
--------------------------------------------------------------------------------
/sedumi/examples/nb.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/examples/nb.mat
--------------------------------------------------------------------------------
/sedumi/examples/trto3.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/examples/trto3.mat
--------------------------------------------------------------------------------
/sedumi/extractA.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/extractA.mexw64
--------------------------------------------------------------------------------
/sedumi/findblks.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/findblks.mexw64
--------------------------------------------------------------------------------
/sedumi/finsymbden.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/finsymbden.mexw64
--------------------------------------------------------------------------------
/sedumi/fwblkslv.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/fwblkslv.mexw64
--------------------------------------------------------------------------------
/sedumi/fwdpr1.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/fwdpr1.mexw64
--------------------------------------------------------------------------------
/sedumi/getada1.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/getada1.mexw64
--------------------------------------------------------------------------------
/sedumi/getada2.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/getada2.mexw64
--------------------------------------------------------------------------------
/sedumi/getada3.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/getada3.mexw64
--------------------------------------------------------------------------------
/sedumi/givensrot.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/givensrot.mexw64
--------------------------------------------------------------------------------
/sedumi/incorder.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/incorder.mexw64
--------------------------------------------------------------------------------
/sedumi/invcholfac.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/invcholfac.mexw64
--------------------------------------------------------------------------------
/sedumi/iswnbr.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/iswnbr.mexw64
--------------------------------------------------------------------------------
/sedumi/ordmmdmex.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/ordmmdmex.mexw64
--------------------------------------------------------------------------------
/sedumi/partitA.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/partitA.mexw64
--------------------------------------------------------------------------------
/sedumi/psdframeit.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/psdframeit.mexw64
--------------------------------------------------------------------------------
/sedumi/psdinvjmul.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/psdinvjmul.mexw64
--------------------------------------------------------------------------------
/sedumi/qblkmul.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/qblkmul.mexw64
--------------------------------------------------------------------------------
/sedumi/qrK.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/qrK.mexw64
--------------------------------------------------------------------------------
/sedumi/quadadd.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/quadadd.mexw64
--------------------------------------------------------------------------------
/sedumi/sedumi_binary_error.m:
--------------------------------------------------------------------------------
1 | function sedumi_binary_error()
2 | %Throw an error indicating the sedumi binaries are not available
3 |
4 | if exist('OCTAVE_VERSION','builtin'),
5 | software = 'Octave';
6 | else
7 | software = 'Matlab';
8 | end
9 |
10 | fs = filesep;
11 | mpath = mfilename('fullpath');
12 | temp = strfind( mpath, fs );
13 | mpath = mpath( 1 : temp(end) - 1 );
14 |
15 | error( 'SeDuMi:NoBinaries', ...
16 | [ 'The SeDuMi binaries for your platform are not installed.\n', ...
17 | 'To rectify, run the following commands from the %s command line:\n\n', ...
18 | ' cd %s\n', ...
19 | ' install_sedumi\n\n', ...
20 | 'For more information, read %s%sInstall.txt.' ], ...
21 | software, mpath, mpath, fs );
22 |
--------------------------------------------------------------------------------
/sedumi/sortnnz.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/sortnnz.mexw64
--------------------------------------------------------------------------------
/sedumi/sqrtinv.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/sqrtinv.mexw64
--------------------------------------------------------------------------------
/sedumi/symbfwblk.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/symbfwblk.mexw64
--------------------------------------------------------------------------------
/sedumi/symfctmex.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/symfctmex.mexw64
--------------------------------------------------------------------------------
/sedumi/urotorder.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/urotorder.mexw64
--------------------------------------------------------------------------------
/sedumi/vecsym.mexw64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/sedumi/vecsym.mexw64
--------------------------------------------------------------------------------
/shims/cvx_gurobi.p:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/shims/cvx_gurobi.p
--------------------------------------------------------------------------------
/shims/cvx_mosek.p:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jhan-04/Sum-Rate-Maximization-for-Linearly-Precoded-Downlink-Multiuser-MISO-Systems-With-Partial-CSIT-A-Rate/1e0e69ba80dffedbd75fcad8cbb457f2fe4c99be/shims/cvx_mosek.p
--------------------------------------------------------------------------------
/structures/cvx_s_hankel.m:
--------------------------------------------------------------------------------
1 | function [ y, symm ] = cvx_s_hankel( m, n, symm )
2 |
3 | %CVX_S_HANKEL Hankel matrices.
4 |
5 | c = 0 : n - 1;
6 | c = c( ones( 1, m ), : );
7 | r = ( 0 : m - 1 )';
8 | r = r( :, ones( 1, n ) );
9 | v = abs( r + c ) + 1;
10 | y = sparse( v, r + m * c + 1, 1, m + n + 1, m * n );
11 | symm = false;
12 |
13 | % Copyright 2005-2016 CVX Research, Inc.
14 | % See the file LICENSE.txt for full copyright information.
15 | % The command 'cvx_where' will show where this file is located.
16 |
--------------------------------------------------------------------------------
/structures/cvx_s_symmetric.m:
--------------------------------------------------------------------------------
1 | function [ y, symm ] = cvx_s_symmetric( m, n, symm ) %#ok
2 | %CVX_S_SYMMETRIC Symmetric matrices (lower triangle storage).
3 | if m ~= n,
4 | error( 'Symmetric structure requires square matrices.' );
5 | end
6 | symm = false;
7 | nsq = n * n;
8 | ntr = 0.5 * ( nsq + n );
9 | c = 0 : n - 1;
10 | c = c( ones( 1, n ), : );
11 | r = c';
12 | mn = min( r, c );
13 | mx = max( r, c );
14 | y = mx + mn .* ( n - 0.5 * ( mn + 1 ) ) + 1;
15 | y = sparse( y( : ), 1 : nsq, 1, ntr, nsq );
16 |
17 | % Copyright 2005-2016 CVX Research, Inc.
18 | % See the file LICENSE.txt for full copyright information.
19 | % The command 'cvx_where' will show where this file is located.
20 |
--------------------------------------------------------------------------------
/structures/cvx_s_symmetric_ut.m:
--------------------------------------------------------------------------------
1 | function [ y, symm ] = cvx_s_symmetric_ut( m, n, symm )
2 | %CVX_S_SYMMETRIC_UT Symmetric matrices (upper triangle storage).
3 | if m ~= n,
4 | error( 'Symmetric structure requires square matrices.' );
5 | end
6 | symm = false;
7 | nsq = n * n;
8 | ntr = 0.5 * ( nsq + n );
9 | c = 0 : n - 1;
10 | c = c( ones( 1, n ), : );
11 | r = c';
12 | mn = min( r, c );
13 | mx = max( r, c );
14 | y = mn + 0.5 * mx .* ( mx + 1 ) + 1;
15 | y = sparse( y( : ), 1 : nsq, 1, ntr, nsq );
16 |
17 | % Copyright 2005-2016 CVX Research, Inc.
18 | % See the file LICENSE.txt for full copyright information.
19 | % The command 'cvx_where' will show where this file is located.
20 |
--------------------------------------------------------------------------------
/structures/cvx_s_upper_hankel.m:
--------------------------------------------------------------------------------
1 | function [ y, symm ] = cvx_s_upper_hankel( m, n, symm )
2 |
3 | % CVX_S_UPPER_HANKEL Upper Hankel matrices.
4 |
5 | c = 0 : n - 1;
6 | c = c( ones( 1, m ), : );
7 | r = ( 0 : m - 1 )';
8 | r = r( :, ones( 1, n ) );
9 | v = abs( r + c ) + 1;
10 | temp = v <= min( m, n );
11 | y = sparse( v( temp ), r( temp ) + m * c( temp ) + 1, 1, min( m, n ), m * n );
12 | symm = false;
13 |
14 | % Copyright 2005-2016 CVX Research, Inc.
15 | % See the file LICENSE.txt for full copyright information.
16 | % The command 'cvx_where' will show where this file is located.
17 |
--------------------------------------------------------------------------------