اولین بار است که به اینجا می‌آیید؟ راهنمای سایت را بخوانید!
0 رای
1.4k بازدید

با سلام و عرض ادب خدمت دوستان گرامی.
بنده دارم یه مقاله ی انگلیسی مینویسم، یه الگوریتم طولانی دارم که وقتی مینویسم به جای اینکه ادامه اش به صفحه ی بعد بره تا اخر همون صفحه میره به طوری که شماره ی اون صفحه رو هم رد میکنه و کل صفحه رو میگیره. حتی وقتی چیزی قبل و بعدش هم تایپ میکنم الگوریتم به آخرین صفحه منتقل میشه.
من فقط یک روز دیگه وقت دارم برای سابمیت مقاله ام و خیلی کارم اورژانسیه.
یه قسمتی از فایلمو ضمیمه کردم . ممنون میشم اگر بتونید کمک کنید.

فایل(های) پیوست:
الگوریتم در محیط شناور قرار دارد و محیط شناور هم بین صفحات شکسته نمی‌شود.
توسط (4.4k امتیاز)
ممنون جواد جان، راهش چیه ؟ باید چیکار کنم؟
توسط (11 امتیاز)

1 پاسخ

0 رای
 
بهترین پاسخ

شاید یک راه حل، ایجاد محیطی شبیه به محیط algorithm باشد. برای این کار می توانید از دستور newenvironment استفاده کنید. البته در نظر داشته باشید که در این صورت برای استفاده از دستور listofalgorithms نیاز به اضافه نمودن یک دستور addcontentsline در زمان اضافه نمودن الگوریتم خود دارید.
کد:

\documentclass[review]{elsarticle}

\usepackage{lineno,hyperref}
\usepackage{amsmath}
%\usepackage{algorithm2e}
%\usepackage{algorithmic}
\usepackage{algorithm}
%\usepackage{algcompatible}
%\usepackage{algorithmicx}
\usepackage[noend]{algpseudocode}

%\makeatletter
%\def\BState{\State\hskip-\ALG@thistlm}
%\makeatother
\modulolinenumbers[5]

\journal{Journal of \LaTeX\ Templates}


\bibliographystyle{elsarticle-num}
%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{noindentafter}
\newcounter{myAlgorithm}%[section]
\setcounter{myAlgorithm}{0}
\newenvironment{myAlgorithm}[1]{
	\refstepcounter{myAlgorithm}
	{\bigskip\par}\hrule\vspace*{1mm}\noindent\textbf{Algorithm \themyAlgorithm{.}}\textrm{#1}
	\vspace*{1mm}\hrule\vspace*{3mm}
}{\par\hrule\bigskip}
\NoIndentAfterEnv{qd}
%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
	\listofalgorithms
	

%
\begin{myAlgorithm}{ Inference algorithm for GBML model}
  \label{alg:MAP-search}
  \addcontentsline{loa}{algorithm}{{\bf Algorithm \ref{alg:MAP-search}.} {\rm Inference algorithm for GBML model}}
  \begin{algorithmic}[1]
  \floatname{algorithm}{Procedure}
  \renewcommand{\algorithmicrequire}{\textbf{Input:}}
  \renewcommand{\algorithmicensure}{\textbf{Output:}}
    \Require
      Data matrix $X$, fuzzifier$m$, Dirichlet parameter$\alpha$, number of clusters $S$;
      Gamma hyperparameters $a$ and $b$, number of sampling iterations ${N_{iter}}$;
    \Ensure
      MAP estimates for membership values ${U^*}$, cluster centers ${C^*}$ and transformation matrix ${L^*}$;
      \State initialize hyperparameters ${a^*}$,${b^*}$,$\alpha $ and set ${{\mu _x}}$, ${{\Sigma _x}}$ according to (\ref{equ_mu}) and (\ref{equ_sigma});
	\State sample initial ${u_n} \sim Dirichlet(\alpha  = {1_S})$ for all $n = \{ 1,...,N\} $;
    \State sample initial ${c_s} \sim N({\mu _x},{\Sigma _x})$ for all $s = \{ 1,...,S\} $;
    \State sample initial $L = {I_p}$; 
    \State set MAP samples to current states $u_n^* \leftarrow {u_n}$,$c_s^* \leftarrow {c_s}$,${L_k^*} \leftarrow           {L_k}$ for all $n = \{ 1,...,N\} $ , $s = \{ 1,...,S\} $ , $k = \{ 1,...,p\} $ 
    \For{$iter = 1...{N_{iter}}$}
    	\State /* Sample $U \sim p(U|X,C,L) \propto p(X,C,U,L)$ */
    	\For{$n = \{ 1,...,N\} $}
      			\State sample proposed new membership vector $u_n^t$ from () 
      			\State accept (${u_n} \leftarrow u_n^t$) proposal with probability ${a_u}$ from ()
      			\If{$p({x_n},u_n^t|{C^*},{L^*}) > p({x_n},u_n^*|{C^*},{L^*})$ using ()}
      			\State $u_n^* \leftarrow u_n^t$
      			\EndIf
      	\EndFor
      	\State /* Sample $C \sim p(C|X,U,L) \propto p(X,C,U,L)$ */
    	\For{$s = \{ 1,...,S\} $}
    		\State sample proposed new cluster center $c_s^t$ from ()
    		\State accept proposal (${c_s} \leftarrow c_s^t$) with probability ${a_c}$ from ()
    		\If{$p(X,c_s^t|{U^*},{L^*}) > p(X,c_s^*|{U^*},{L^*})$ using ()}
      			\State $c_s^* \leftarrow c_s^t$
      	    \EndIf
    	\EndFor
    	\State /* Sample $L \sim p(L|X,C,U) \propto p(X,C,U,L)$ */
    	\For{$k = \{ 1,...,p\} $}
    		\State sample proposed new cluster center $L_k^t$ from ()
    		\For{$q = \{ 1,...,p\} $}
    			\If{$q =  = k$}
    				{$L_q^t = L_k^t$}
    			\EndIf
    		\EndFor
    		\State accept proposal (${L_k} \leftarrow L_k^t$) with probability ${a_L}$ from ()
    		\If{$p(X,L^t|{C^*},{U^*}) > p(X,L^*|{C^*},{U^*})$ using ()}
      			\State $L_k^* \leftarrow L_k^t$
      	    \EndIf
    	\EndFor
    	
    \EndFor
    
    \State  /* check full sample for new maximum likelihood */
    
    \If{$p(X,C,U,L) > p(X,{C^*},{U^*},{L^*})$ using ()}
    \State ${U^*} \leftarrow U$
    \State ${C^*} \leftarrow C$
    \State ${L^*} \leftarrow L$
    \EndIf
    
  \end{algorithmic}
\end{myAlgorithm}
You can even refer to Algorithm \ref{alg:MAP-search}.
\end{document}

قسمت هایی از خروجی:
enter image description here
enter image description here
موفق و پیروز باشید.

ممنون از پاسختون دوست عزیز.
ولی برای من در خط 23 و 25 خطا میگیره!
پکیج خاصی را باید نصب کنم؟
توسط (11 امتیاز)
اگر از TexLive استفاده می کنید نیازی به بسته خاصی ندارید. فقط همان بسته هایی که در کد آمده است را باید نصب داشته باشید.
در صورت امکان خطایی که می گیرید را کپی کرده و در همین محل قرار دهید تا شاید بتوان مشکل را برطرف نمود.
توسط (180 امتیاز)
از TEX LIVE 2013 و BIDITEX MAKER استفاده میکنم
این error هست که در خط 23 میده:

! LaTeX Error: File `noindentafter.sty' not found.Type X to quit or <RETURN> to proceed,or enter new name. (Default extension: sty)Enter file name:! Emergency stop.<read > \newcounter
توسط (11 امتیاز)
شما بسته noindentafter را نصب ندارید. از این بسته برای بهبود عملکرد محیط environment جدیدی که تعریف کرده بودم استفاده شده بود.
دستورات زیر را از کد بالا حذف کنید.
\NoIndentAfterEnv{qd}
\usepackage{noindentafter}
در واقع باید اعتراف کنم که در حالت کلی می شود گفت که این دو دستور در کد ارائه شده اضافی بودند.
امیدوارم با حذف این دو خط دیگر مشکلی برای اجرا نداشته باشید.
توسط (180 امتیاز)
عالی!
مرسی دوست عزیز. خیلی خیییلی لطف کردی.
توسط (11 امتیاز)
سلام و وقت بخیر

آیا بدون استفاده از \usepackage[noend]{algpseudocode} فقط با همان بسته الگوریتمیک می توان به این صورت از خارج شدن الگوریتم از صفحه جلوگیری کرد؟
یعنی آیا راه دومی هم وجود دارد؟؟

ممنون از پاسخ تون
توسط (12 امتیاز)
پرسیدن سوال
وب‌سایت پرسش و پاسخ پارسی‌لاتک جایی برای پرسش و پاسخ درباره سیستم حروف‌چینی لاتک و بسته زی‌پرشین است. در اینجا می‌توانید سوال‌های خود را بپرسید و به سوال‌های دیگران پاسخ دهید.

7.1k سوال

6.6k پاسخ

23.4k دیدگاه

6.9k کاربر

محبوب‌ترین برچسب‌ها

رفع خطا جدول xepersian مراجع ریاضی‌نویسی شکل bidi فونت فهرست مطالب شماره‌گذاری منابع پانویس بیب‌تک tikz parsilatex تک‌لایو بیمر اسلاید زی‌پرشین پاورقی bibtex سربرگ نماد رسم شکل فرمول‌نویسی ارجاع‌دهی biditexmaker هدر ویرایشگر قالب beamer واژه‌نامه اندازه فونت texstudio عنوان فصل ماتریس اعمال نشدن تغییرات در پی‌دی‌اف رسم جدول شماره صفحه bidipresentation حاشیه رنگ عنوان شکل اسلاید فارسی محیط قضیه گراف مکان شکل tikzpicture enumerate حروف‌چینی کد شماره فصل tabriz_thesis نمایه align زیرنویس شکل کادر itemize فهرست اشکال الگوریتم عدم اجرا listings نیم‌فاصله متن لاتین و فارسی بسته فاصله بین خطوط قالب پایان‌نامه فرمول نصب تک‌لایو فارسی‌تک hyperref شماره فرمول glossaries کپشن نمودار خروجی لاتک حروف‌چینی چندستونی فونت فارسی و انگلیسی ماکرونویسی biditools شماره پاورقی پیوست‌ سوال امتحانی فاصله‌گذاری فرمول چندضابطه‌ای extrafootnotefeatures subfigure biditufte-book header texmaker pdf خطا tex longtable تصویر شمارنده زیرنویس texlive2015 رسم نمودار شماره‌گذاری صفحات پایان نامه دیاگرام فهرست جداول میک‌تک texlive2016 تنظیم جدول آکولاد شعر kashida تورفتگی texworks caption اندیس اعداد فارسی lollipop iust-thesis multicol فصل‌نویسی سوال چهارگزینه‌ای بولد فاصله عمودی pgfplots xindy چپ‌چینی اوبونتو میکروسافت ورد قاب geometry xelatex texlive fancyhdr وسط‌چینی تک لایو 2015 tcolorbox عنوان بخش شماره گذاری به‌روزرسانی بسته aimc46 صفر توخالی فرمول طولانی بیرون‌زدگی کاما پوستر فاصله سطرها نوشتافت شکست خط tex-programming فونت اعداد قرآن tabriz-thesis
...